Merge branch 'master' of /home/dm4/OpenFOAM/OpenFOAM-dev
This commit is contained in:
commit
5a62444c6a
@ -337,55 +337,75 @@ addLayersControls
|
||||
|
||||
// Advanced settings
|
||||
|
||||
// When not to extrude surface. 0 is flat surface, 90 is when two faces
|
||||
// are perpendicular
|
||||
featureAngle 60;
|
||||
|
||||
// At non-patched sides allow mesh to slip if extrusion direction makes
|
||||
// angle larger than slipFeatureAngle.
|
||||
slipFeatureAngle 30;
|
||||
// Static analysis of starting mesh
|
||||
|
||||
// Maximum number of snapping relaxation iterations. Should stop
|
||||
// before upon reaching a correct mesh.
|
||||
nRelaxIter 5;
|
||||
// When not to extrude surface. 0 is flat surface, 90 is when two faces
|
||||
// are perpendicular
|
||||
featureAngle 130;
|
||||
|
||||
// Number of smoothing iterations of surface normals
|
||||
nSmoothSurfaceNormals 1;
|
||||
// Stop layer growth on highly warped cells
|
||||
maxFaceThicknessRatio 0.5;
|
||||
|
||||
// Number of smoothing iterations of interior mesh movement direction
|
||||
nSmoothNormals 3;
|
||||
|
||||
// Smooth layer thickness over surface patches
|
||||
nSmoothThickness 10;
|
||||
// Patch displacement
|
||||
|
||||
// Stop layer growth on highly warped cells
|
||||
maxFaceThicknessRatio 0.5;
|
||||
// Number of smoothing iterations of surface normals
|
||||
nSmoothSurfaceNormals 1;
|
||||
|
||||
// Reduce layer growth where ratio thickness to medial
|
||||
// distance is large
|
||||
maxThicknessToMedialRatio 0.3;
|
||||
// Smooth layer thickness over surface patches
|
||||
nSmoothThickness 10;
|
||||
|
||||
// Angle used to pick up medial axis points
|
||||
// Note: changed(corrected) w.r.t 17x! 90 degrees corresponds to 130 in 17x.
|
||||
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;
|
||||
// Medial axis analysis
|
||||
|
||||
// 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;
|
||||
// Angle used to pick up medial axis points
|
||||
// Note: changed(corrected) w.r.t 17x! 90 degrees corresponds to 130
|
||||
// in 17x.
|
||||
minMedianAxisAngle 90;
|
||||
|
||||
// Additional reporting: if there are just a few faces where there
|
||||
// are mesh errors (after adding the layers) print their face centres.
|
||||
// This helps in tracking down problematic mesh areas.
|
||||
//additionalReporting true;
|
||||
// Reduce layer growth where ratio thickness to medial
|
||||
// distance is large
|
||||
maxThicknessToMedialRatio 0.3;
|
||||
|
||||
// Number of smoothing iterations of interior mesh movement direction
|
||||
nSmoothNormals 3;
|
||||
|
||||
// Optional: smooth displacement after medial axis determination.
|
||||
// default is 0.
|
||||
nSmoothDisplacement 90;
|
||||
|
||||
|
||||
// Mesh shrinking
|
||||
|
||||
// Optional: at non-patched sides allow mesh to slip if extrusion
|
||||
// direction makes angle larger than slipFeatureAngle. Default is
|
||||
// 0.5*featureAngle.
|
||||
slipFeatureAngle 30;
|
||||
|
||||
// Maximum number of snapping relaxation iterations. Should stop
|
||||
// before upon reaching a correct mesh.
|
||||
nRelaxIter 5;
|
||||
|
||||
// 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;
|
||||
|
||||
// Additional reporting: if there are just a few faces where there
|
||||
// are mesh errors (after adding the layers) print their face centres.
|
||||
// This helps in tracking down problematic mesh areas.
|
||||
//additionalReporting true;
|
||||
}
|
||||
|
||||
// Generic mesh quality settings. At any undoable phase these determine
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2012 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2012-2013 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -97,7 +97,7 @@ void Foam::faceSelections::searchableSurfaceSelection::select
|
||||
|
||||
// Boundary faces
|
||||
vectorField neighbourCellCentres;
|
||||
syncTools::swapBoundaryCellList
|
||||
syncTools::swapBoundaryCellPositions
|
||||
(
|
||||
mesh_,
|
||||
mesh_.cellCentres(),
|
||||
|
@ -1404,6 +1404,7 @@ int main(int argc, char *argv[])
|
||||
(
|
||||
"splits mesh into multiple regions (detected by walking across faces)"
|
||||
);
|
||||
# include "addRegionOption.H"
|
||||
#include "addOverwriteOption.H"
|
||||
argList::addBoolOption
|
||||
(
|
||||
@ -1467,7 +1468,7 @@ int main(int argc, char *argv[])
|
||||
#include "setRootCase.H"
|
||||
#include "createTime.H"
|
||||
runTime.functionObjects().off();
|
||||
#include "createMesh.H"
|
||||
#include "createNamedMesh.H"
|
||||
const word oldInstance = mesh.pointsInstance();
|
||||
|
||||
word blockedFacesName;
|
||||
|
@ -254,8 +254,8 @@ public:
|
||||
);
|
||||
|
||||
|
||||
//- Gather points and faces onto master and merge (geometrically) into
|
||||
// single patch.
|
||||
//- Gather points and faces onto master and merge into single patch.
|
||||
// Note: uses faces/points, not localFaces/localPoints.
|
||||
template
|
||||
<
|
||||
class Face,
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2012 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2012-2013 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -52,7 +52,8 @@ void Foam::PatchTools::gatherAndMerge
|
||||
labelList pointSizes;
|
||||
{
|
||||
List<Field<PointType> > gatheredPoints(Pstream::nProcs());
|
||||
gatheredPoints[Pstream::myProcNo()] = p.localPoints();
|
||||
gatheredPoints[Pstream::myProcNo()] = p.points();
|
||||
|
||||
Pstream::gatherList(gatheredPoints);
|
||||
|
||||
if (Pstream::master())
|
||||
@ -75,7 +76,7 @@ void Foam::PatchTools::gatherAndMerge
|
||||
// gathered points
|
||||
{
|
||||
List<List<Face> > gatheredFaces(Pstream::nProcs());
|
||||
gatheredFaces[Pstream::myProcNo()] = p.localFaces();
|
||||
gatheredFaces[Pstream::myProcNo()] = p;
|
||||
Pstream::gatherList(gatheredFaces);
|
||||
|
||||
if (Pstream::master())
|
||||
|
@ -1529,13 +1529,18 @@ void Foam::autoSnapDriver::doSnap
|
||||
|
||||
if (!meshOk)
|
||||
{
|
||||
Info<< "Did not succesfully snap mesh. Giving up."
|
||||
<< nl << endl;
|
||||
|
||||
// Use current mesh as base mesh
|
||||
meshMover.correct();
|
||||
|
||||
break;
|
||||
WarningIn("autoSnapDriver::doSnap(..)")
|
||||
<< "Did not succesfully snap mesh."
|
||||
<< " Continuing to snap to resolve easy surfaces but the"
|
||||
<< " resulting mesh will not satisfy your quality"
|
||||
<< " constraints" << nl << endl;
|
||||
//Info<< "Did not succesfully snap mesh. Giving up."
|
||||
// << nl << endl;
|
||||
//
|
||||
//// Use current mesh as base mesh
|
||||
//meshMover.correct();
|
||||
//
|
||||
//break;
|
||||
}
|
||||
|
||||
if (debug&meshRefinement::MESH)
|
||||
|
@ -40,17 +40,17 @@ writeInterval 100;
|
||||
purgeWrite 0;
|
||||
|
||||
|
||||
//- Have regular restart files
|
||||
secondaryWriteControl cpuTime;
|
||||
secondaryWriteInterval 3600;
|
||||
secondaryPurgeWrite 1;
|
||||
//- Uncomment to have regular (every 2 hours of run time) restart files
|
||||
//secondaryWriteControl cpuTime; // runtime
|
||||
//secondaryWriteInterval 7200; // seconds
|
||||
//secondaryPurgeWrite 1; // keep all but last dump
|
||||
|
||||
|
||||
writeFormat ascii;
|
||||
writeFormat binary;
|
||||
|
||||
writePrecision 6;
|
||||
|
||||
writeCompression compressed;
|
||||
writeCompression uncompressed;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
|
@ -9,8 +9,12 @@
|
||||
forceCoeffs1
|
||||
{
|
||||
type forceCoeffs;
|
||||
|
||||
functionObjectLibs ( "libforces.so" );
|
||||
outputControl outputTime;
|
||||
|
||||
outputControl timeStep;
|
||||
outputInterval 1;
|
||||
|
||||
log yes;
|
||||
|
||||
patches ( "motorBike.*" );
|
||||
|
Loading…
Reference in New Issue
Block a user