mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merge branch 'cvm' of ssh://hunt//home/noisy3/OpenFOAM/OpenFOAM-dev into cvm
This commit is contained in:
362
applications/utilities/mesh/generation/cvMesh/cvMeshDict
Normal file
362
applications/utilities/mesh/generation/cvMesh/cvMeshDict
Normal file
@ -0,0 +1,362 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object cvMeshDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
// Impoprtant:
|
||||
// -----------
|
||||
// Any scalar with a name <name>Coeff specifies a value that will be implemented
|
||||
// as a faction of the local target cell size
|
||||
// Any scalar with a name <name>Size specifies an absolute size.
|
||||
|
||||
|
||||
// Geometry. Definition of all surfaces. All surfaces are of class
|
||||
// searchableSurface.
|
||||
// Surfaces need to be (almost) closed - use closedTriSurfaceMesh
|
||||
// if they are not topologically closed. Surfaces need to be oriented so
|
||||
// the space to be meshed is always on the inside of all surfaces. Use e.g.
|
||||
// surfaceOrient.
|
||||
geometry
|
||||
{
|
||||
flange.obj
|
||||
{
|
||||
type triSurfaceMesh;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// See cvControls.H
|
||||
surfaceConformation
|
||||
{
|
||||
// Volume of surfaces that is inside mesh.
|
||||
locationInMesh (0 0 0);
|
||||
|
||||
// Balance this between
|
||||
// - very low distance: little chance of interference from other
|
||||
// surfaces
|
||||
// - largish distance: less non-orthogonality in final cell
|
||||
// (circumcentre far away from centroid)
|
||||
pointPairDistanceCoeff 0.1;
|
||||
|
||||
// Mixed feature edges - both inside and outside edges. Recreated
|
||||
// by inserting triplets of points to recreate a single edge. Done for
|
||||
// all edges emanating from point. triplets of points get inserted
|
||||
// mixedFeaturePointPPDistanceCoeff distance away from feature point.
|
||||
mixedFeaturePointPPDistanceCoeff 5.0;
|
||||
|
||||
// See cvControls.H
|
||||
featurePointExclusionDistanceCoeff 0.4;
|
||||
|
||||
// See cvControls.H
|
||||
featureEdgeExclusionDistanceCoeff 0.2;
|
||||
|
||||
// Optimisation: do not check for surface intersection (of dual edges)
|
||||
// for points near to surface.
|
||||
surfaceSearchDistanceCoeff 2.5;
|
||||
|
||||
// Do not conform to small protrusions. These get done by mesh filtering
|
||||
// instead.
|
||||
maxSurfaceProtrusionCoeff 0.1;
|
||||
|
||||
// If feature edge with large angle (so more than 125 degrees) introduce
|
||||
// additional points to create two half angled cells.
|
||||
maxQuadAngle 125;
|
||||
|
||||
// Frequency to redo surface conformation (expensive).
|
||||
surfaceConformationRebuildFrequency 10;
|
||||
|
||||
// Initial and intermediate controls
|
||||
coarseConformationControls
|
||||
{
|
||||
// Initial conformation
|
||||
initial
|
||||
{
|
||||
// We've got a point poking through the surface. Don't do
|
||||
// if near to feature edge.
|
||||
edgeSearchDistCoeff 1.1;
|
||||
surfacePtReplaceDistCoeff 0.5;
|
||||
}
|
||||
|
||||
iteration
|
||||
{
|
||||
edgeSearchDistCoeff 1.25;
|
||||
surfacePtReplaceDistCoeff 0.7;
|
||||
}
|
||||
|
||||
// Stop either at maxIterations or if the number of surface pokes
|
||||
// is very small (iterationToInitialHitRatioLimit * initial number)
|
||||
maxIterations 15;
|
||||
|
||||
iterationToInitialHitRatioLimit 0.001;
|
||||
}
|
||||
|
||||
// Final (at endTime) controls
|
||||
fineConformationControls
|
||||
{
|
||||
initial
|
||||
{
|
||||
edgeSearchDistCoeff 1.1;
|
||||
surfacePtReplaceDistCoeff 0.5;
|
||||
}
|
||||
|
||||
iteration
|
||||
{
|
||||
edgeSearchDistCoeff 1.25;
|
||||
surfacePtReplaceDistCoeff 0.7;
|
||||
}
|
||||
|
||||
maxIterations 15;
|
||||
|
||||
iterationToInitialHitRatioLimit 0.001;
|
||||
}
|
||||
|
||||
// Geometry to mesh to
|
||||
geometryToConformTo
|
||||
{
|
||||
flange.obj
|
||||
{
|
||||
featureMethod extendedFeatureEdgeMesh;
|
||||
extendedFeatureEdgeMesh "flange.extendedFeatureEdgeMesh";
|
||||
}
|
||||
}
|
||||
|
||||
// Independent features
|
||||
additionalFeatures {}
|
||||
}
|
||||
|
||||
|
||||
initialPoints
|
||||
{
|
||||
// Do not place point closer than minimumSurfaceDistanceCoeff
|
||||
// to the surface. Is fraction of local target cell size (see below)
|
||||
minimumSurfaceDistanceCoeff 0.55;
|
||||
|
||||
//initialPointsMethod densityWeightedStochastic;
|
||||
initialPointsMethod hierarchicalDensityWeightedStochastic;
|
||||
// initialPointsMethod uniformGrid;
|
||||
// initialPointsMethod bodyCentredCubic;
|
||||
// initialPointsMethod pointFile;
|
||||
|
||||
// Take boundbox of all geometry. Samples with this box. If too much
|
||||
// samples (due to target cell size) in box split box.
|
||||
hierarchicalDensityWeightedStochasticDetails
|
||||
{
|
||||
// Number of refinement levels. Needs to be enough to pick up features
|
||||
// due to size ratio.
|
||||
minLevels 4;
|
||||
// Split box if ratio of min to max size larger than maxSizeRatio
|
||||
maxSizeRatio 5.0;
|
||||
// Per box sample 7x7x7 internally
|
||||
sampleResolution 7;
|
||||
// Additionally per face of the box sample 5x5
|
||||
surfaceSampleResolution 5;
|
||||
}
|
||||
|
||||
densityWeightedStochasticDetails
|
||||
{
|
||||
// Volume of space to be meshed. Use surfaceInertia.
|
||||
totalVolume 1.56e-05;
|
||||
}
|
||||
|
||||
uniformGridDetails
|
||||
{
|
||||
// Absolute cell size.
|
||||
initialCellSize 0.0015;
|
||||
randomiseInitialGrid yes;
|
||||
randomPerturbationCoeff 0.02;
|
||||
}
|
||||
|
||||
bodyCentredCubicDetails
|
||||
{
|
||||
initialCellSize 0.0015;
|
||||
randomiseInitialGrid no;
|
||||
randomPerturbationCoeff 0.1;
|
||||
}
|
||||
|
||||
pointFileDetails
|
||||
{
|
||||
// Reads points from file. Still rejects points that are too
|
||||
// close to the surface (minimumSurfaceDistanceCoeff) or on the
|
||||
// wrong side of the surfaces.
|
||||
pointFile "constant/internalDelaunayVertices";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Control size of voronoi cells i.e. distance between points. This
|
||||
// determines the target cell size which is used everywhere.
|
||||
// It determines the cell size given a location. It then uses all
|
||||
// the rules
|
||||
// - defaultCellSize
|
||||
// - cellSizeControlGeometry
|
||||
// to determine target cell size. Rule with highest priority wins. If same
|
||||
// priority smallest cell size wins.
|
||||
motionControl
|
||||
{
|
||||
// Absolute cell size of back ground mesh
|
||||
defaultCellSize 0.00075;
|
||||
|
||||
// Assign a priority to all requests for cell sizes, the highest overrules.
|
||||
defaultPriority 0;
|
||||
|
||||
cellSizeControlGeometry
|
||||
{
|
||||
ref7_outside
|
||||
{
|
||||
// optional name of geometry
|
||||
surface ref7;
|
||||
priority 1;
|
||||
mode outside;//inside/bothSides
|
||||
cellSizeFunction linearDistance;
|
||||
|
||||
// Vary from surfaceCellSize (close to the surface) to
|
||||
// distanceCellSize (further than 'distance')
|
||||
linearDistanceCoeffs
|
||||
{
|
||||
surfaceCellSize 1e-5; // absolute size
|
||||
distanceCellSize $defaultCellSize;
|
||||
distance 1.0;
|
||||
}
|
||||
}
|
||||
|
||||
tunnel_APPROACH_INLET.obj
|
||||
{
|
||||
priority 1;
|
||||
mode bothSides;
|
||||
cellSizeFunction surfaceOffsetLinearDistance;
|
||||
// Constant within a certain distance then linear fade away.
|
||||
// Good for layers.
|
||||
surfaceOffsetLinearDistanceCoeffs
|
||||
{
|
||||
surfaceCellSize $ref4_size;
|
||||
distanceCellSize $defaultCellSize;
|
||||
surfaceOffset 0.512;
|
||||
totalDistance $tunnel_totalDistance;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Underrelaxation for point motion. Simulated annealing: starts off at 1
|
||||
// and lowers to 0 (and simulation endTime) to converge points.
|
||||
// adaptiveLinear is preferred choice.
|
||||
// Points move by e.g. 10% of tet size.
|
||||
relaxationModel adaptiveLinear;
|
||||
|
||||
adaptiveLinearCoeffs
|
||||
{
|
||||
relaxationStart 1.0;
|
||||
relaxationEnd 0.0;
|
||||
}
|
||||
|
||||
// Lots and lots of .obj files
|
||||
objOutput no;
|
||||
|
||||
// Timing and memory usage.
|
||||
timeChecks yes;
|
||||
|
||||
// Number of rays in plane parallel to nearest surface. Used to detect
|
||||
// next closest surfaces. Used to work out alignment (three vectors)
|
||||
// to surface.
|
||||
// Note that only the initial points (from the seeding) calculate this
|
||||
// information so if these are not fine enough the alignment will
|
||||
// not be correct. (any points added during the running will lookup
|
||||
// this information from the nearest initial point since it is
|
||||
// expensive)
|
||||
alignmentSearchSpokes 36;
|
||||
|
||||
// For each delaunay edge (between two vertices, becomes
|
||||
// the Voronoi face normal) snap to the alignment direction if within
|
||||
// alignmentAcceptanceAngle. Keep at 48.
|
||||
alignmentAcceptanceAngle 48;
|
||||
|
||||
// How often to rebuild the alignment info
|
||||
sizeAndAlignmentRebuildFrequency 20;
|
||||
|
||||
// When to insert points. If edge larger than 1.75 target cell size
|
||||
// (so tets too large/stretched) insert point. Do not change these
|
||||
// settings.
|
||||
pointInsertionCriteria
|
||||
{
|
||||
cellCentreDistCoeff 1.75;
|
||||
// Do not insert point if voronoi face (on edge) very small.
|
||||
faceAreaRatioCoeff 0.0025;
|
||||
// Insert point only if edge closely aligned to local alignment
|
||||
// direction.
|
||||
acceptanceAngle 21.5;
|
||||
}
|
||||
|
||||
// Opposite: remove point if mesh too compressed. Do not change these
|
||||
// settings.
|
||||
pointRemovalCriteria
|
||||
{
|
||||
cellCentreDistCoeff 0.65;
|
||||
}
|
||||
|
||||
// How to determine the point motion. All edges got some direction.
|
||||
// Sum all edge contributions to determine point motion. Weight by
|
||||
// face area so motion is preferentially determined by large faces
|
||||
// (more importantly ignore contribution from small faces).
|
||||
// Do not change these settings.
|
||||
faceAreaWeightModel piecewiseLinearRamp;
|
||||
|
||||
piecewiseLinearRampCoeffs
|
||||
{
|
||||
lowerAreaFraction 0.5;
|
||||
upperAreaFraction 1.0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// After simulation. Do not change. See cvControls.H
|
||||
polyMeshFiltering
|
||||
{
|
||||
filterSizeCoeff 0.2;
|
||||
mergeClosenessCoeff 1e-4;
|
||||
|
||||
// To not filter: set maxNonOrtho to 1 (so check fails) and then
|
||||
// set continueFilteringOnBadInitialPolyMesh to false.
|
||||
continueFilteringOnBadInitialPolyMesh true;
|
||||
filterErrorReductionCoeff 0.5;
|
||||
filterCountSkipThreshold 4;
|
||||
maxCollapseIterations 25;
|
||||
maxConsecutiveEqualFaceSets 5;
|
||||
// Remove little steps (almost perp to surface) by collapsing face.
|
||||
surfaceStepFaceAngle 80;
|
||||
// Do not collapse face to edge if should become edges
|
||||
edgeCollapseGuardFraction 0.3;
|
||||
// Only collapse face to point if high aspect ratio
|
||||
maxCollapseFaceToPointSideLengthCoeff 0.35;
|
||||
}
|
||||
|
||||
|
||||
meshQualityControls
|
||||
{
|
||||
maxNonOrtho 65;
|
||||
maxBoundarySkewness 50;
|
||||
maxInternalSkewness 10;
|
||||
maxConcave 80;
|
||||
minTetQuality 1e-30;
|
||||
minVol 0;
|
||||
minArea -1;
|
||||
minTwist 0.02;
|
||||
minDeterminant 0.001;
|
||||
minFaceWeight 0.02;
|
||||
minVolRatio 0.01;
|
||||
minTriangleTwist -1;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -83,7 +83,8 @@ surfaceFeatureExtract:
|
||||
- uses cgal only for curvature calculation. See cgal.
|
||||
- writes a triSurfaceField of 'curvature' and 'internal closeness'
|
||||
and 'external closeness'. This is just a normal intersection, not
|
||||
a nearest point. These fields get used by cvMesh.
|
||||
a nearest point. These fields get used by cvMesh. Or not yet - is part
|
||||
of proposal to seed points according to curvature.
|
||||
- detects features that are near?
|
||||
|
||||
surfaceSplitByTopology:
|
||||
|
||||
24
tutorials/mesh/cvMesh/simpleShapes/Allrun
Executable file
24
tutorials/mesh/cvMesh/simpleShapes/Allrun
Executable file
@ -0,0 +1,24 @@
|
||||
#!/bin/sh
|
||||
cd ${0%/*} || exit 1 # run from this directory
|
||||
|
||||
# Source tutorial run functions
|
||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||
|
||||
# Generate aligned points (in constant/internalDelaunayVertices) and a
|
||||
# mesh from that.
|
||||
#cp system/controlDict-generatePoints system/controlDict
|
||||
#cp system/cvMeshDict-generatePoints system/cvMeshDict
|
||||
runApplication surfaceFeatureExtract constant/triSurface/coneAndSphere.obj coneAndSphere -includedAngle 125
|
||||
runApplication surfaceFeatureExtract constant/triSurface/domain.stl domain -includedAngle 125
|
||||
runApplication cvMesh
|
||||
|
||||
# Use pre-generated aligned points (constant/internalDelaunayVertices)
|
||||
# to generate a mesh
|
||||
# cp system/controlDict-usePoints system/controlDict
|
||||
# cp system/cvMeshDict-usePoints system/cvMeshDict
|
||||
# runApplication cvMesh
|
||||
|
||||
# Generate some sets for a bit of mesh inspection
|
||||
runApplication topoSet
|
||||
|
||||
# ----------------------------------------------------------------- end-of-file
|
||||
828
tutorials/mesh/cvMesh/simpleShapes/constant/triSurface/cone.stl
Normal file
828
tutorials/mesh/cvMesh/simpleShapes/constant/triSurface/cone.stl
Normal file
@ -0,0 +1,828 @@
|
||||
solid ascii
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.475528 -0.154509
|
||||
vertex -0.5 0.456773 -0.203368
|
||||
vertex -0.5 0.489074 -0.103956
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.489074 -0.103956
|
||||
vertex -0.5 0.456773 -0.203368
|
||||
vertex -0.5 0.497261 -0.0522642
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.497261 -0.0522642
|
||||
vertex -0.5 0.456773 -0.203368
|
||||
vertex -0.5 0.5 0
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.5 0
|
||||
vertex -0.5 0.456773 -0.203368
|
||||
vertex -0.5 0.497261 0.0522642
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.497261 0.0522642
|
||||
vertex -0.5 0.456773 -0.203368
|
||||
vertex -0.5 0.489074 0.103956
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.489074 0.103956
|
||||
vertex -0.5 0.456773 -0.203368
|
||||
vertex -0.5 0.475528 0.154509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.475528 0.154509
|
||||
vertex -0.5 0.456773 -0.203368
|
||||
vertex -0.5 0.456773 0.203368
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.456773 0.203368
|
||||
vertex -0.5 0.456773 -0.203368
|
||||
vertex -0.5 0.433013 0.25
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.456773 -0.203368
|
||||
vertex -0.5 0.433013 -0.25
|
||||
vertex -0.5 0.433013 0.25
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.433013 0.25
|
||||
vertex -0.5 0.433013 -0.25
|
||||
vertex -0.5 0.404509 0.293893
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.404509 0.293893
|
||||
vertex -0.5 0.433013 -0.25
|
||||
vertex -0.5 0.371572 0.334565
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.433013 -0.25
|
||||
vertex -0.5 0.404509 -0.293893
|
||||
vertex -0.5 0.371572 0.334565
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.404509 -0.293893
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.371572 0.334565
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.371572 0.334565
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.334565 0.371572
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.334565 0.371572
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.293893 0.404509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.293893 0.404509
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.25 0.433013
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.25 0.433013
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.203368 0.456773
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.203368 0.456773
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.154509 0.475528
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.154509 0.475528
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.103956 0.489074
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.103956 0.489074
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.0522642 0.497261
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.0522642 0.497261
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -1.02552e-10 0.5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -1.02552e-10 0.5
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.0522642 0.497261
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.0522642 0.497261
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.103956 0.489074
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.103956 0.489074
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.154509 0.475528
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.154509 0.475528
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.203368 0.456773
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.203368 0.456773
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.25 0.433013
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.25 0.433013
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.293893 0.404509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.293893 0.404509
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.334565 0.371572
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.334565 0.371572
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.371572 0.334565
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.371572 0.334565
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.404509 0.293893
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.404509 0.293893
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.433013 0.25
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.433013 0.25
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.456773 0.203368
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.456773 0.203368
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.475528 0.154509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.475528 0.154509
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.489074 0.103956
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.489074 0.103956
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.497261 0.0522642
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.497261 0.0522642
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.5 -2.05103e-10
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.5 -2.05103e-10
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.497261 -0.0522642
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.497261 -0.0522642
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.489074 -0.103956
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.489074 -0.103956
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.475528 -0.154509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.475528 -0.154509
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.456773 -0.203368
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.456773 -0.203368
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.433013 -0.25
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.433013 -0.25
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.404509 -0.293893
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.404509 -0.293893
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.371572 -0.334565
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 -0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.371572 -0.334565
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.334565 -0.371572
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.334565 -0.371572
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.293893 -0.404509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.293893 -0.404509
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.25 -0.433013
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.25 -0.433013
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.203368 -0.456773
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.203368 -0.456773
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.154509 -0.475528
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.154509 -0.475528
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.103956 -0.489074
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.103956 -0.489074
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 -0.0522642 -0.497261
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 -0.0522642 -0.497261
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 3.07655e-10 -0.5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 3.07655e-10 -0.5
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.0522642 -0.497261
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.0522642 -0.497261
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.103956 -0.489074
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.103956 -0.489074
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.154509 -0.475528
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 -0 0
|
||||
outer loop
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.334565 -0.371572
|
||||
vertex -0.5 0.154509 -0.475528
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 -0 0
|
||||
outer loop
|
||||
vertex -0.5 0.334565 -0.371572
|
||||
vertex -0.5 0.293893 -0.404509
|
||||
vertex -0.5 0.154509 -0.475528
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 -0 0
|
||||
outer loop
|
||||
vertex -0.5 0.293893 -0.404509
|
||||
vertex -0.5 0.25 -0.433013
|
||||
vertex -0.5 0.154509 -0.475528
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.5 0.203368 -0.456773
|
||||
vertex -0.5 0.154509 -0.475528
|
||||
vertex -0.5 0.25 -0.433013
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.893446 0.0468234
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.5 0
|
||||
vertex -0.5 0.497261 0.0522642
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.883657 0.139958
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.497261 0.0522642
|
||||
vertex -0.5 0.489074 0.103956
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.864187 0.231558
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.489074 0.103956
|
||||
vertex -0.5 0.475528 0.154509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.835248 0.320622
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.475528 0.154509
|
||||
vertex -0.5 0.456773 0.203368
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.797159 0.406173
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.456773 0.203368
|
||||
vertex -0.5 0.433013 0.25
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.750335 0.487273
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.433013 0.25
|
||||
vertex -0.5 0.404509 0.293893
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.695291 0.563036
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.404509 0.293893
|
||||
vertex -0.5 0.371572 0.334565
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.632629 0.632629
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.371572 0.334565
|
||||
vertex -0.5 0.334565 0.371572
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.563036 0.695291
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.334565 0.371572
|
||||
vertex -0.5 0.293893 0.404509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.487273 0.750335
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.293893 0.404509
|
||||
vertex -0.5 0.25 0.433013
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.406173 0.797159
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.25 0.433013
|
||||
vertex -0.5 0.203368 0.456773
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.320622 0.835248
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.203368 0.456773
|
||||
vertex -0.5 0.154509 0.475528
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.231558 0.864187
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.154509 0.475528
|
||||
vertex -0.5 0.103956 0.489074
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.139958 0.883657
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.103956 0.489074
|
||||
vertex -0.5 0.0522642 0.497261
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.0468234 0.893446
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.0522642 0.497261
|
||||
vertex -0.5 -1.02552e-10 0.5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.0468234 0.893446
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -1.02552e-10 0.5
|
||||
vertex -0.5 -0.0522642 0.497261
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.139958 0.883657
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.0522642 0.497261
|
||||
vertex -0.5 -0.103956 0.489074
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.231558 0.864187
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.103956 0.489074
|
||||
vertex -0.5 -0.154509 0.475528
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.320622 0.835248
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.154509 0.475528
|
||||
vertex -0.5 -0.203368 0.456773
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.406173 0.797159
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.203368 0.456773
|
||||
vertex -0.5 -0.25 0.433013
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.487273 0.750335
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.25 0.433013
|
||||
vertex -0.5 -0.293893 0.404509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.563036 0.695291
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.293893 0.404509
|
||||
vertex -0.5 -0.334565 0.371572
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.632629 0.632629
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.334565 0.371572
|
||||
vertex -0.5 -0.371572 0.334565
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.695291 0.563036
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.371572 0.334565
|
||||
vertex -0.5 -0.404509 0.293893
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.750335 0.487273
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.404509 0.293893
|
||||
vertex -0.5 -0.433013 0.25
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.797159 0.406173
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.433013 0.25
|
||||
vertex -0.5 -0.456773 0.203368
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.835248 0.320622
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.456773 0.203368
|
||||
vertex -0.5 -0.475528 0.154509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.864187 0.231558
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.475528 0.154509
|
||||
vertex -0.5 -0.489074 0.103956
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.883657 0.139958
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.489074 0.103956
|
||||
vertex -0.5 -0.497261 0.0522642
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.893446 0.0468234
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.497261 0.0522642
|
||||
vertex -0.5 -0.5 -2.05103e-10
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.893446 -0.0468234
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.5 -2.05103e-10
|
||||
vertex -0.5 -0.497261 -0.0522642
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.883657 -0.139958
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.497261 -0.0522642
|
||||
vertex -0.5 -0.489074 -0.103956
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.864187 -0.231558
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.489074 -0.103956
|
||||
vertex -0.5 -0.475528 -0.154509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.835248 -0.320622
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.475528 -0.154509
|
||||
vertex -0.5 -0.456773 -0.203368
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.797159 -0.406173
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.456773 -0.203368
|
||||
vertex -0.5 -0.433013 -0.25
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.750335 -0.487273
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.433013 -0.25
|
||||
vertex -0.5 -0.404509 -0.293893
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.695291 -0.563036
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.404509 -0.293893
|
||||
vertex -0.5 -0.371572 -0.334565
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.632629 -0.632629
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.371572 -0.334565
|
||||
vertex -0.5 -0.334565 -0.371572
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.563036 -0.695291
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.334565 -0.371572
|
||||
vertex -0.5 -0.293893 -0.404509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.487273 -0.750335
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.293893 -0.404509
|
||||
vertex -0.5 -0.25 -0.433013
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.406173 -0.797159
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.25 -0.433013
|
||||
vertex -0.5 -0.203368 -0.456773
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.320622 -0.835248
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.203368 -0.456773
|
||||
vertex -0.5 -0.154509 -0.475528
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.231558 -0.864187
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.154509 -0.475528
|
||||
vertex -0.5 -0.103956 -0.489074
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.139958 -0.883657
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.103956 -0.489074
|
||||
vertex -0.5 -0.0522642 -0.497261
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 -0.0468234 -0.893446
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 -0.0522642 -0.497261
|
||||
vertex -0.5 3.07655e-10 -0.5
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.0468234 -0.893446
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 3.07655e-10 -0.5
|
||||
vertex -0.5 0.0522642 -0.497261
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.139958 -0.883657
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.0522642 -0.497261
|
||||
vertex -0.5 0.103956 -0.489074
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.231558 -0.864187
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.103956 -0.489074
|
||||
vertex -0.5 0.154509 -0.475528
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.320622 -0.835248
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.154509 -0.475528
|
||||
vertex -0.5 0.203368 -0.456773
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.406173 -0.797159
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.203368 -0.456773
|
||||
vertex -0.5 0.25 -0.433013
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.487273 -0.750335
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.25 -0.433013
|
||||
vertex -0.5 0.293893 -0.404509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.563036 -0.695291
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.293893 -0.404509
|
||||
vertex -0.5 0.334565 -0.371572
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.632629 -0.632629
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.334565 -0.371572
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.695291 -0.563036
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.371572 -0.334565
|
||||
vertex -0.5 0.404509 -0.293893
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.750335 -0.487273
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.404509 -0.293893
|
||||
vertex -0.5 0.433013 -0.25
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.797159 -0.406173
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.433013 -0.25
|
||||
vertex -0.5 0.456773 -0.203368
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.835248 -0.320622
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.456773 -0.203368
|
||||
vertex -0.5 0.475528 -0.154509
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.864187 -0.231558
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.475528 -0.154509
|
||||
vertex -0.5 0.489074 -0.103956
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.883657 -0.139958
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.489074 -0.103956
|
||||
vertex -0.5 0.497261 -0.0522642
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.446723 0.893446 -0.0468234
|
||||
outer loop
|
||||
vertex 0.5 0 0
|
||||
vertex -0.5 0.497261 -0.0522642
|
||||
vertex -0.5 0.5 0
|
||||
endloop
|
||||
endfacet
|
||||
endsolid
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,44 @@
|
||||
solid ascii
|
||||
facet normal -1 0 0
|
||||
outer loop
|
||||
vertex -0.7 -0.9 -1
|
||||
vertex -0.7 -0.9 1
|
||||
vertex -0.7 1.1 1
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1 0 -0
|
||||
outer loop
|
||||
vertex 1.3 -0.9 -1
|
||||
vertex 1.3 1.1 -1
|
||||
vertex 1.3 1.1 1
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -1 0
|
||||
outer loop
|
||||
vertex -0.7 -0.9 -1
|
||||
vertex 1.3 -0.9 -1
|
||||
vertex 1.3 -0.9 1
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0 1 0
|
||||
outer loop
|
||||
vertex -0.7 1.1 -1
|
||||
vertex -0.7 1.1 1
|
||||
vertex 1.3 1.1 1
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 0 -1
|
||||
outer loop
|
||||
vertex -0.7 -0.9 -1
|
||||
vertex -0.7 1.1 -1
|
||||
vertex 1.3 1.1 -1
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0 -0 1
|
||||
outer loop
|
||||
vertex -0.7 -0.9 1
|
||||
vertex 1.3 -0.9 1
|
||||
vertex 1.3 1.1 1
|
||||
endloop
|
||||
endfacet
|
||||
endsolid
|
||||
5042
tutorials/mesh/cvMesh/simpleShapes/constant/triSurface/sphere.stl
Normal file
5042
tutorials/mesh/cvMesh/simpleShapes/constant/triSurface/sphere.stl
Normal file
File diff suppressed because it is too large
Load Diff
54
tutorials/mesh/cvMesh/simpleShapes/system/controlDict
Normal file
54
tutorials/mesh/cvMesh/simpleShapes/system/controlDict
Normal file
@ -0,0 +1,54 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
|
||||
root "";
|
||||
case "";
|
||||
instance "";
|
||||
local "";
|
||||
|
||||
class dictionary;
|
||||
object controlDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
startFrom latestTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 80;
|
||||
|
||||
deltaT 1;
|
||||
|
||||
writeControl timeStep;
|
||||
|
||||
writeInterval 1000; //10 to see the meshing steps
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat ascii;
|
||||
|
||||
writePrecision 10;
|
||||
|
||||
writeCompression uncompressed;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 6;
|
||||
|
||||
runTimeModifiable yes;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,54 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
|
||||
root "";
|
||||
case "";
|
||||
instance "";
|
||||
local "";
|
||||
|
||||
class dictionary;
|
||||
object controlDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
startFrom latestTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 80;
|
||||
|
||||
deltaT 1;
|
||||
|
||||
writeControl timeStep;
|
||||
|
||||
writeInterval 1000; //10 to see the meshing steps
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat ascii;
|
||||
|
||||
writePrecision 10;
|
||||
|
||||
writeCompression uncompressed;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 6;
|
||||
|
||||
runTimeModifiable yes;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,54 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
|
||||
root "";
|
||||
case "";
|
||||
instance "";
|
||||
local "";
|
||||
|
||||
class dictionary;
|
||||
object controlDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
startFrom latestTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 0;
|
||||
|
||||
deltaT 1;
|
||||
|
||||
writeControl timeStep;
|
||||
|
||||
writeInterval 1000; //10 to see the meshing steps
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat ascii;
|
||||
|
||||
writePrecision 10;
|
||||
|
||||
writeCompression uncompressed;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 6;
|
||||
|
||||
runTimeModifiable yes;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
1
tutorials/mesh/cvMesh/simpleShapes/system/cvMeshDict
Symbolic link
1
tutorials/mesh/cvMesh/simpleShapes/system/cvMeshDict
Symbolic link
@ -0,0 +1 @@
|
||||
cvMeshDict-generatePoints
|
||||
@ -0,0 +1,277 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
|
||||
root "";
|
||||
case "";
|
||||
instance "";
|
||||
local "";
|
||||
|
||||
class dictionary;
|
||||
object cvMeshDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
// Impoprtant:
|
||||
// -----------
|
||||
// Any scalar with a name <name>Coeff specifies a value that will be implemented
|
||||
// as a faction of the local target cell size
|
||||
// Any scalar with a name <name>Size specifies an absolute size.
|
||||
|
||||
|
||||
// Geometry. Definition of all surfaces. All surfaces are of class
|
||||
// searchableSurface.
|
||||
// Surfaces need to be (almost) closed - use closedTriSurfaceMesh
|
||||
// if they are not topologically closed. Surfaces need to be oriented so
|
||||
// the space to be meshed is always on the inside of all surfaces. Use e.g.
|
||||
// surfaceOrient.
|
||||
geometry
|
||||
{
|
||||
// Internal shape
|
||||
coneAndSphere.obj
|
||||
{
|
||||
type triSurfaceMesh;
|
||||
}
|
||||
|
||||
// Bounds of domain
|
||||
domain.stl
|
||||
{
|
||||
type triSurfaceMesh;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
surfaceConformation
|
||||
{
|
||||
// Point that is inside wanted part of geometry.
|
||||
locationInMesh (0 -0.5 0);
|
||||
|
||||
// Balance this between
|
||||
// - very low distance: little chance of interference from other
|
||||
// surfaces
|
||||
// - largish distance: less non-orthogonality in final cell
|
||||
// (circumcentre far away from centroid)
|
||||
pointPairDistanceCoeff 0.1;
|
||||
|
||||
mixedFeaturePointPPDistanceCoeff 5.0;
|
||||
|
||||
featurePointExclusionDistanceCoeff 0.4;
|
||||
|
||||
featureEdgeExclusionDistanceCoeff 0.2;
|
||||
|
||||
surfaceSearchDistanceCoeff 2.5;
|
||||
|
||||
maxSurfaceProtrusionCoeff 0.1;
|
||||
|
||||
maxQuadAngle 125;
|
||||
|
||||
surfaceConformationRebuildFrequency 10;
|
||||
|
||||
coarseConformationControls
|
||||
{
|
||||
initial
|
||||
{
|
||||
edgeSearchDistCoeff 1.1;
|
||||
surfacePtReplaceDistCoeff 0.5;
|
||||
}
|
||||
|
||||
iteration
|
||||
{
|
||||
edgeSearchDistCoeff 1.25;
|
||||
surfacePtReplaceDistCoeff 0.7;
|
||||
}
|
||||
|
||||
maxIterations 15;
|
||||
|
||||
iterationToInitialHitRatioLimit 0.001;
|
||||
}
|
||||
|
||||
fineConformationControls
|
||||
{
|
||||
initial
|
||||
{
|
||||
edgeSearchDistCoeff 1.1;
|
||||
surfacePtReplaceDistCoeff 0.5;
|
||||
}
|
||||
|
||||
iteration
|
||||
{
|
||||
edgeSearchDistCoeff 1.25;
|
||||
surfacePtReplaceDistCoeff 0.7;
|
||||
}
|
||||
|
||||
maxIterations 15;
|
||||
|
||||
iterationToInitialHitRatioLimit 0.001;
|
||||
}
|
||||
|
||||
geometryToConformTo
|
||||
{
|
||||
coneAndSphere.obj
|
||||
{
|
||||
featureMethod extendedFeatureEdgeMesh;
|
||||
extendedFeatureEdgeMesh "coneAndSphere.extendedFeatureEdgeMesh";
|
||||
}
|
||||
|
||||
domain.stl
|
||||
{
|
||||
featureMethod extendedFeatureEdgeMesh;
|
||||
extendedFeatureEdgeMesh "domain.extendedFeatureEdgeMesh";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
additionalFeatures {}
|
||||
}
|
||||
|
||||
|
||||
initialPoints
|
||||
{
|
||||
// Do not place point closer than minimumSurfaceDistanceCoeff
|
||||
// to the surface. Is fraction of local target cell size (see below)
|
||||
minimumSurfaceDistanceCoeff 0.55;
|
||||
|
||||
initialPointsMethod hierarchicalDensityWeightedStochastic;
|
||||
//initialPointsMethod densityWeightedStochastic;
|
||||
// initialPointsMethod uniformGrid;
|
||||
// initialPointsMethod bodyCentredCubic;
|
||||
// initialPointsMethod pointFile;
|
||||
|
||||
|
||||
// Take boundbox of all geometry. Samples with this box. If too much
|
||||
// samples (due to target cell size) in box split box.
|
||||
hierarchicalDensityWeightedStochasticDetails
|
||||
{
|
||||
// Number of refinement levels. Needs to be enough to pick up features
|
||||
// due to size ratio.
|
||||
minLevels 2;
|
||||
// Split box if ratio of min to max size larger than maxSizeRatio
|
||||
maxSizeRatio 5.0;
|
||||
// Per box sample 3x3x3 internally
|
||||
sampleResolution 3;
|
||||
// Additionally per face of the box sample 5x5
|
||||
surfaceSampleResolution 3;
|
||||
}
|
||||
|
||||
densityWeightedStochasticDetails
|
||||
{
|
||||
totalVolume 1.56e-05;
|
||||
}
|
||||
|
||||
uniformGridDetails
|
||||
{
|
||||
initialCellSize 0.0015;
|
||||
randomiseInitialGrid yes;
|
||||
randomPerturbationCoeff 0.02;
|
||||
}
|
||||
|
||||
bodyCentredCubicDetails
|
||||
{
|
||||
initialCellSize 0.0015;
|
||||
randomiseInitialGrid no;
|
||||
randomPerturbationCoeff 0.1;
|
||||
}
|
||||
|
||||
pointFileDetails
|
||||
{
|
||||
pointFile "constant/internalDelaunayVertices";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
motionControl
|
||||
{
|
||||
defaultCellSize 0.1;
|
||||
|
||||
// Assign a priority to all requests for cell sizes, the highest overrules.
|
||||
defaultPriority 0;
|
||||
|
||||
cellSizeControlGeometry
|
||||
{
|
||||
}
|
||||
|
||||
relaxationModel adaptiveLinear;
|
||||
|
||||
adaptiveLinearCoeffs
|
||||
{
|
||||
relaxationStart 1.0;
|
||||
relaxationEnd 0.0;
|
||||
}
|
||||
|
||||
objOutput no;
|
||||
|
||||
timeChecks yes;
|
||||
|
||||
alignmentSearchSpokes 36;
|
||||
|
||||
alignmentAcceptanceAngle 48;
|
||||
|
||||
sizeAndAlignmentRebuildFrequency 20;
|
||||
|
||||
pointInsertionCriteria
|
||||
{
|
||||
cellCentreDistCoeff 1.75;
|
||||
faceAreaRatioCoeff 0.0025;
|
||||
acceptanceAngle 21.5;
|
||||
}
|
||||
|
||||
pointRemovalCriteria
|
||||
{
|
||||
cellCentreDistCoeff 0.65;
|
||||
}
|
||||
|
||||
faceAreaWeightModel piecewiseLinearRamp;
|
||||
|
||||
piecewiseLinearRampCoeffs
|
||||
{
|
||||
lowerAreaFraction 0.5;
|
||||
upperAreaFraction 1.0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
polyMeshFiltering
|
||||
{
|
||||
filterSizeCoeff 0.2;
|
||||
mergeClosenessCoeff 1e-4;
|
||||
continueFilteringOnBadInitialPolyMesh true;
|
||||
filterErrorReductionCoeff 0.5;
|
||||
filterCountSkipThreshold 4;
|
||||
maxCollapseIterations 25;
|
||||
maxConsecutiveEqualFaceSets 5;
|
||||
surfaceStepFaceAngle 80;
|
||||
edgeCollapseGuardFraction 0.3;
|
||||
maxCollapseFaceToPointSideLengthCoeff 0.35;
|
||||
}
|
||||
|
||||
|
||||
meshQualityControls
|
||||
{
|
||||
maxNonOrtho 65;
|
||||
maxBoundarySkewness 50;
|
||||
maxInternalSkewness 10;
|
||||
maxConcave 80;
|
||||
minTetQuality 1e-30;
|
||||
minVol 0;
|
||||
minArea -1;
|
||||
minTwist 0.02;
|
||||
minDeterminant 0.001;
|
||||
minFaceWeight 0.02;
|
||||
minVolRatio 0.01;
|
||||
minTriangleTwist -1;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
226
tutorials/mesh/cvMesh/simpleShapes/system/cvMeshDict-usePoints
Normal file
226
tutorials/mesh/cvMesh/simpleShapes/system/cvMeshDict-usePoints
Normal file
@ -0,0 +1,226 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
|
||||
root "";
|
||||
case "";
|
||||
instance "";
|
||||
local "";
|
||||
|
||||
class dictionary;
|
||||
object cvMeshDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
// Any scalar with a name <name>Coeff specifies a value that will be implemented
|
||||
// as a faction of the local target cell size
|
||||
|
||||
geometry
|
||||
{
|
||||
flange.obj
|
||||
{
|
||||
type triSurfaceMesh;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
surfaceConformation
|
||||
{
|
||||
locationInMesh (0 0 0);
|
||||
|
||||
pointPairDistanceCoeff 0.1;
|
||||
|
||||
mixedFeaturePointPPDistanceCoeff 5.0;
|
||||
|
||||
featurePointExclusionDistanceCoeff 0.4;
|
||||
|
||||
featureEdgeExclusionDistanceCoeff 0.2;
|
||||
|
||||
surfaceSearchDistanceCoeff 2.5;
|
||||
|
||||
maxSurfaceProtrusionCoeff 0.1;
|
||||
|
||||
maxQuadAngle 125;
|
||||
|
||||
surfaceConformationRebuildFrequency 10;
|
||||
|
||||
coarseConformationControls
|
||||
{
|
||||
initial
|
||||
{
|
||||
edgeSearchDistCoeff 1.1;
|
||||
surfacePtReplaceDistCoeff 0.5;
|
||||
}
|
||||
|
||||
iteration
|
||||
{
|
||||
edgeSearchDistCoeff 1.25;
|
||||
surfacePtReplaceDistCoeff 0.7;
|
||||
}
|
||||
|
||||
maxIterations 15;
|
||||
|
||||
iterationToInitialHitRatioLimit 0.001;
|
||||
}
|
||||
|
||||
fineConformationControls
|
||||
{
|
||||
initial
|
||||
{
|
||||
edgeSearchDistCoeff 1.1;
|
||||
surfacePtReplaceDistCoeff 0.5;
|
||||
}
|
||||
|
||||
iteration
|
||||
{
|
||||
edgeSearchDistCoeff 1.25;
|
||||
surfacePtReplaceDistCoeff 0.7;
|
||||
}
|
||||
|
||||
maxIterations 15;
|
||||
|
||||
iterationToInitialHitRatioLimit 0.001;
|
||||
}
|
||||
|
||||
geometryToConformTo
|
||||
{
|
||||
flange.obj
|
||||
{
|
||||
featureMethod extendedFeatureEdgeMesh;
|
||||
extendedFeatureEdgeMesh "flange.extendedFeatureEdgeMesh";
|
||||
}
|
||||
}
|
||||
|
||||
additionalFeatures {}
|
||||
}
|
||||
|
||||
|
||||
initialPoints
|
||||
{
|
||||
minimumSurfaceDistanceCoeff 0.55;
|
||||
|
||||
// initialPointsMethod densityWeightedStochastic;
|
||||
// initialPointsMethod uniformGrid;
|
||||
// initialPointsMethod bodyCentredCubic;
|
||||
initialPointsMethod pointFile;
|
||||
|
||||
densityWeightedStochasticDetails
|
||||
{
|
||||
totalVolume 1.56e-05;
|
||||
}
|
||||
|
||||
uniformGridDetails
|
||||
{
|
||||
initialCellSize 0.0015;
|
||||
randomiseInitialGrid yes;
|
||||
randomPerturbationCoeff 0.02;
|
||||
}
|
||||
|
||||
bodyCentredCubicDetails
|
||||
{
|
||||
initialCellSize 0.0015;
|
||||
randomiseInitialGrid no;
|
||||
randomPerturbationCoeff 0.1;
|
||||
}
|
||||
|
||||
pointFileDetails
|
||||
{
|
||||
pointFile "constant/internalDelaunayVertices";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
motionControl
|
||||
{
|
||||
defaultCellSize 0.00075;
|
||||
|
||||
// Assign a priority to all requests for cell sizes, the highest overrules.
|
||||
defaultPriority 0;
|
||||
|
||||
cellSizeControlGeometry
|
||||
{
|
||||
}
|
||||
|
||||
relaxationModel adaptiveLinear;
|
||||
|
||||
adaptiveLinearCoeffs
|
||||
{
|
||||
relaxationStart 1.0;
|
||||
relaxationEnd 0.0;
|
||||
}
|
||||
|
||||
objOutput no;
|
||||
|
||||
timeChecks yes;
|
||||
|
||||
alignmentSearchSpokes 36;
|
||||
|
||||
alignmentAcceptanceAngle 48;
|
||||
|
||||
sizeAndAlignmentRebuildFrequency 20;
|
||||
|
||||
pointInsertionCriteria
|
||||
{
|
||||
cellCentreDistCoeff 1.75;
|
||||
faceAreaRatioCoeff 0.0025;
|
||||
acceptanceAngle 21.5;
|
||||
}
|
||||
|
||||
pointRemovalCriteria
|
||||
{
|
||||
cellCentreDistCoeff 0.65;
|
||||
}
|
||||
|
||||
faceAreaWeightModel piecewiseLinearRamp;
|
||||
|
||||
piecewiseLinearRampCoeffs
|
||||
{
|
||||
lowerAreaFraction 0.5;
|
||||
upperAreaFraction 1.0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
polyMeshFiltering
|
||||
{
|
||||
filterSizeCoeff 0.2;
|
||||
mergeClosenessCoeff 1e-4;
|
||||
continueFilteringOnBadInitialPolyMesh true;
|
||||
filterErrorReductionCoeff 0.5;
|
||||
filterCountSkipThreshold 4;
|
||||
maxCollapseIterations 25;
|
||||
maxConsecutiveEqualFaceSets 5;
|
||||
surfaceStepFaceAngle 80;
|
||||
edgeCollapseGuardFraction 0.3;
|
||||
maxCollapseFaceToPointSideLengthCoeff 0.35;
|
||||
}
|
||||
|
||||
|
||||
meshQualityControls
|
||||
{
|
||||
maxNonOrtho 65;
|
||||
maxBoundarySkewness 50;
|
||||
maxInternalSkewness 10;
|
||||
maxConcave 80;
|
||||
minTetQuality 1e-30;
|
||||
minVol 0;
|
||||
minArea -1;
|
||||
minTwist 0.02;
|
||||
minDeterminant 0.001;
|
||||
minFaceWeight 0.02;
|
||||
minVolRatio 0.01;
|
||||
minTriangleTwist -1;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
55
tutorials/mesh/cvMesh/simpleShapes/system/fvSchemes
Normal file
55
tutorials/mesh/cvMesh/simpleShapes/system/fvSchemes
Normal file
@ -0,0 +1,55 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
d2dt2Schemes
|
||||
{
|
||||
default steadyState;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default Gauss cubic;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default Gauss cubic;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear uncorrected;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
default cubic;
|
||||
}
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default uncorrected;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
{
|
||||
default no;
|
||||
D ;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
41
tutorials/mesh/cvMesh/simpleShapes/system/fvSolution
Normal file
41
tutorials/mesh/cvMesh/simpleShapes/system/fvSolution
Normal file
@ -0,0 +1,41 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object fvSolution;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
solvers
|
||||
{
|
||||
"(D|Dcorr)"
|
||||
{
|
||||
solver GAMG;
|
||||
tolerance 1e-06;
|
||||
relTol 0.99;
|
||||
smoother GaussSeidel;
|
||||
cacheAgglomeration true;
|
||||
nCellsInCoarsestLevel 6;
|
||||
agglomerator faceAreaPair;
|
||||
mergeLevels 1;
|
||||
}
|
||||
}
|
||||
|
||||
stressAnalysis
|
||||
{
|
||||
nCorrectors 1;
|
||||
D 1e-10;
|
||||
accelerationFactor 2;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
148
tutorials/mesh/cvMesh/simpleShapes/system/topoSetDict
Normal file
148
tutorials/mesh/cvMesh/simpleShapes/system/topoSetDict
Normal file
@ -0,0 +1,148 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object topoSetDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
actions
|
||||
(
|
||||
{
|
||||
name z;
|
||||
type cellSet;
|
||||
action new;
|
||||
source boxToCell;
|
||||
sourceInfo
|
||||
{
|
||||
box (-100 -100 -0.01)(100 100 100);
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
name zf;
|
||||
type faceSet;
|
||||
action new;
|
||||
source cellToFace;
|
||||
sourceInfo
|
||||
{
|
||||
set z;
|
||||
option all;
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
name z;
|
||||
type cellSet;
|
||||
action invert;
|
||||
}
|
||||
|
||||
{
|
||||
name zf;
|
||||
type faceSet;
|
||||
action subset;
|
||||
source cellToFace;
|
||||
sourceInfo
|
||||
{
|
||||
set z;
|
||||
option all;
|
||||
}
|
||||
}
|
||||
|
||||
// ~~~~~~~~~~~~~~~~ //
|
||||
|
||||
{
|
||||
name y;
|
||||
type cellSet;
|
||||
action new;
|
||||
source boxToCell;
|
||||
sourceInfo
|
||||
{
|
||||
box (-100 0 -100)(100 100 100);
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
name yf;
|
||||
type faceSet;
|
||||
action new;
|
||||
source cellToFace;
|
||||
sourceInfo
|
||||
{
|
||||
set y;
|
||||
option all;
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
name y;
|
||||
type cellSet;
|
||||
action invert;
|
||||
}
|
||||
|
||||
{
|
||||
name yf;
|
||||
type faceSet;
|
||||
action subset;
|
||||
source cellToFace;
|
||||
sourceInfo
|
||||
{
|
||||
set y;
|
||||
option all;
|
||||
}
|
||||
}
|
||||
|
||||
// ~~~~~~~~~~~~~~~~ //
|
||||
|
||||
{
|
||||
name x;
|
||||
type cellSet;
|
||||
action new;
|
||||
source boxToCell;
|
||||
sourceInfo
|
||||
{
|
||||
box (0 -100 -100)(100 100 100);
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
name xf;
|
||||
type faceSet;
|
||||
action new;
|
||||
source cellToFace;
|
||||
sourceInfo
|
||||
{
|
||||
set x;
|
||||
option all;
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
name x;
|
||||
type cellSet;
|
||||
action invert;
|
||||
}
|
||||
|
||||
{
|
||||
name xf;
|
||||
type faceSet;
|
||||
action subset;
|
||||
source cellToFace;
|
||||
sourceInfo
|
||||
{
|
||||
set x;
|
||||
option all;
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
// ************************************************************************* //
|
||||
Reference in New Issue
Block a user