mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Added function to limit vertex displacements that penetrate the surface or come to close to it (closer than twice the local point pair distance) by recursively halving the displacement vector. Using runTime.loop() construct in app for time loop - with runTime++ at the end of the loop - wasn't getting the polyMesh written to the final timestep. Moving targetCellSize and internal delaunay vertex writing out of writeDual function and calling them from the move() function.
78 lines
2.1 KiB
C
78 lines
2.1 KiB
C
/*---------------------------------------------------------------------------*\
|
|
========= |
|
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
\\ / O peration |
|
|
\\ / A nd | Copyright (C) 2008-2009 OpenCFD Ltd.
|
|
\\/ M anipulation |
|
|
-------------------------------------------------------------------------------
|
|
License
|
|
This file is part of OpenFOAM.
|
|
|
|
OpenFOAM is free software; you can redistribute it and/or modify it
|
|
under the terms of the GNU General Public License as published by the
|
|
Free Software Foundation; either version 2 of the License, or (at your
|
|
option) any later version.
|
|
|
|
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
|
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with OpenFOAM; if not, write to the Free Software Foundation,
|
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
|
|
Application
|
|
cvMesh
|
|
|
|
Description
|
|
Conformal Voronoi automatic mesh generator
|
|
|
|
\*---------------------------------------------------------------------------*/
|
|
|
|
#include "fvCFD.H"
|
|
#include "conformalVoronoiMesh.H"
|
|
|
|
using namespace Foam;
|
|
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
|
|
int main(int argc, char *argv[])
|
|
{
|
|
# include "setRootCase.H"
|
|
# include "createTime.H"
|
|
runTime.functionObjects().off();
|
|
|
|
IOdictionary cvMeshDict
|
|
(
|
|
IOobject
|
|
(
|
|
"cvMeshDict",
|
|
runTime.system(),
|
|
runTime,
|
|
IOobject::MUST_READ,
|
|
IOobject::NO_WRITE
|
|
)
|
|
);
|
|
|
|
conformalVoronoiMesh mesh(runTime, cvMeshDict);
|
|
|
|
while (runTime.loop())
|
|
{
|
|
Info<< nl << "Time = " << runTime.timeName() << endl;
|
|
|
|
mesh.move();
|
|
|
|
mesh.conformToSurface();
|
|
}
|
|
|
|
mesh.writeMesh();
|
|
|
|
Info<< nl << "End\n" << endl;
|
|
|
|
return 0;
|
|
}
|
|
|
|
|
|
// ************************************************************************* //
|