snappyHexMesh: Added "noRefinement" writeFlag to control the writing of cellLevel, pointLevel etc. files
By default snappyHexMesh writes files relating to the hex-splitting process into
the polyMesh directory: cellLevel level0Edge pointLevel surfaceIndex
but by setting the noRefinement flag:
writeFlags
(
noRefinement
.
.
.
);
these optional files which are generally not needed are not written.
If you run the three stages of snappyHexMesh separately or run a dynamic mesh
solver supporting refinement and unrefinement these files are needed
and "noRefinement" should not be set.
This commit is contained in:
@ -653,15 +653,6 @@ void writeMesh
|
||||
meshRefiner.printMeshInfo(debugLevel, msg);
|
||||
Info<< "Writing mesh to time " << meshRefiner.timeName() << endl;
|
||||
|
||||
//label flag = meshRefinement::MESH;
|
||||
//if (writeLevel)
|
||||
//{
|
||||
// flag |= meshRefinement::SCALARLEVELS;
|
||||
//}
|
||||
//if (debug & meshRefinement::OBJINTERSECTIONS)
|
||||
//{
|
||||
// flag |= meshRefinement::OBJINTERSECTIONS;
|
||||
//}
|
||||
meshRefiner.write
|
||||
(
|
||||
debugLevel,
|
||||
@ -711,117 +702,6 @@ int main(int argc, char *argv[])
|
||||
|
||||
autoPtr<fvMesh> meshPtr;
|
||||
|
||||
// if (surfaceSimplify)
|
||||
// {
|
||||
// IOdictionary foamyHexMeshDict
|
||||
// (
|
||||
// IOobject
|
||||
// (
|
||||
// "foamyHexMeshDict",
|
||||
// runTime.system(),
|
||||
// runTime,
|
||||
// IOobject::MUST_READ_IF_MODIFIED,
|
||||
// IOobject::NO_WRITE
|
||||
// )
|
||||
// );
|
||||
//
|
||||
// const dictionary& motionDict =
|
||||
// foamyHexMeshDict.subDict("motionControl");
|
||||
//
|
||||
// const scalar defaultCellSize =
|
||||
// readScalar(motionDict.lookup("defaultCellSize"));
|
||||
//
|
||||
// Info<< "Constructing single cell mesh from boundBox" << nl << endl;
|
||||
//
|
||||
// boundBox bb(args.optionRead<boundBox>("surfaceSimplify"));
|
||||
//
|
||||
// labelList owner(6, label(0));
|
||||
// labelList neighbour(0);
|
||||
//
|
||||
// const cellModel& hexa = *(cellModeller::lookup("hex"));
|
||||
// faceList faces = hexa.modelFaces();
|
||||
//
|
||||
// meshPtr.set
|
||||
// (
|
||||
// new fvMesh
|
||||
// (
|
||||
// IOobject
|
||||
// (
|
||||
// fvMesh::defaultRegion,
|
||||
// runTime.timeName(),
|
||||
// runTime,
|
||||
// IOobject::NO_READ
|
||||
// ),
|
||||
// xferMove<Field<vector>>(bb.points()()),
|
||||
// faces.xfer(),
|
||||
// owner.xfer(),
|
||||
// neighbour.xfer()
|
||||
// )
|
||||
// );
|
||||
//
|
||||
// List<polyPatch*> patches(1);
|
||||
//
|
||||
// patches[0] = new wallPolyPatch
|
||||
// (
|
||||
// "boundary",
|
||||
// 6,
|
||||
// 0,
|
||||
// 0,
|
||||
// meshPtr().boundaryMesh(),
|
||||
// wallPolyPatch::typeName
|
||||
// );
|
||||
//
|
||||
// meshPtr().addFvPatches(patches);
|
||||
//
|
||||
// const scalar initialCellSize = ::pow(meshPtr().V()[0], 1.0/3.0);
|
||||
// const label initialRefLevels =
|
||||
// ::log(initialCellSize/defaultCellSize)/::log(2);
|
||||
//
|
||||
// Info<< "Default cell size = " << defaultCellSize << endl;
|
||||
// Info<< "Initial cell size = " << initialCellSize << endl;
|
||||
//
|
||||
// Info<< "Initial refinement levels = " << initialRefLevels << endl;
|
||||
//
|
||||
// Info<< "Mesh starting size = " << meshPtr().nCells() << endl;
|
||||
//
|
||||
// // meshCutter must be destroyed before writing the mesh otherwise it
|
||||
// // writes the cellLevel/pointLevel files
|
||||
// {
|
||||
// hexRef8 meshCutter(meshPtr(), false);
|
||||
//
|
||||
// for (label refineI = 0; refineI < initialRefLevels; ++refineI)
|
||||
// {
|
||||
// // Mesh changing engine.
|
||||
// polyTopoChange meshMod(meshPtr(), true);
|
||||
//
|
||||
// // Play refinement commands into mesh changer.
|
||||
// meshCutter.setRefinement
|
||||
// (
|
||||
// identity(meshPtr().nCells()),
|
||||
// meshMod
|
||||
// );
|
||||
//
|
||||
// // Create mesh (no inflation), return map from old to new mesh
|
||||
// autoPtr<mapPolyMesh> map =
|
||||
// meshMod.changeMesh(meshPtr(), false);
|
||||
//
|
||||
// // Update fields
|
||||
// meshPtr().updateMesh(map);
|
||||
//
|
||||
// // Delete mesh volumes.
|
||||
// meshPtr().clearOut();
|
||||
//
|
||||
// Info<< "Refinement Iteration " << refineI + 1
|
||||
// << ", Mesh size = " << meshPtr().nCells() << endl;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// Info<< "Mesh end size = " << meshPtr().nCells() << endl;
|
||||
//
|
||||
// Info<< "Create mesh" << endl;
|
||||
// meshPtr().write();
|
||||
// }
|
||||
// else
|
||||
{
|
||||
Foam::Info
|
||||
<< "Create mesh for time = "
|
||||
|
||||
Reference in New Issue
Block a user