Merge branch 'master' of github.com:OpenFOAM/OpenFOAM-dev
This commit is contained in:
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration | Website: https://openfoam.org
|
\\ / O peration | Website: https://openfoam.org
|
||||||
\\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2021 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -33,7 +33,7 @@ Description
|
|||||||
#include "argList.H"
|
#include "argList.H"
|
||||||
#include "polyMesh.H"
|
#include "polyMesh.H"
|
||||||
#include "Time.H"
|
#include "Time.H"
|
||||||
#include "boundaryMesh.H"
|
#include "repatchMesh.H"
|
||||||
#include "repatchPolyTopoChanger.H"
|
#include "repatchPolyTopoChanger.H"
|
||||||
#include "unitConversion.H"
|
#include "unitConversion.H"
|
||||||
#include "OFstream.H"
|
#include "OFstream.H"
|
||||||
@ -44,21 +44,21 @@ using namespace Foam;
|
|||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
// Get all feature edges.
|
// Get all feature edges.
|
||||||
void collectFeatureEdges(const boundaryMesh& bMesh, labelList& markedEdges)
|
void collectFeatureEdges(const repatchMesh& rMesh, labelList& markedEdges)
|
||||||
{
|
{
|
||||||
markedEdges.setSize(bMesh.mesh().nEdges());
|
markedEdges.setSize(rMesh.mesh().nEdges());
|
||||||
|
|
||||||
label markedI = 0;
|
label markedI = 0;
|
||||||
|
|
||||||
forAll(bMesh.featureSegments(), i)
|
forAll(rMesh.featureSegments(), i)
|
||||||
{
|
{
|
||||||
const labelList& segment = bMesh.featureSegments()[i];
|
const labelList& segment = rMesh.featureSegments()[i];
|
||||||
|
|
||||||
forAll(segment, j)
|
forAll(segment, j)
|
||||||
{
|
{
|
||||||
label featEdgeI = segment[j];
|
label featEdgeI = segment[j];
|
||||||
|
|
||||||
label meshEdgeI = bMesh.featureToEdge()[featEdgeI];
|
label meshEdgeI = rMesh.featureToEdge()[featEdgeI];
|
||||||
|
|
||||||
markedEdges[markedI++] = meshEdgeI;
|
markedEdges[markedI++] = meshEdgeI;
|
||||||
}
|
}
|
||||||
@ -95,24 +95,24 @@ int main(int argc, char *argv[])
|
|||||||
<< endl;
|
<< endl;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Use boundaryMesh to reuse all the featureEdge stuff in there.
|
// Use repatchMesh to reuse all the featureEdge stuff in there.
|
||||||
//
|
//
|
||||||
|
|
||||||
boundaryMesh bMesh;
|
repatchMesh rMesh;
|
||||||
bMesh.read(mesh);
|
rMesh.read(mesh);
|
||||||
|
|
||||||
// Set feature angle (calculate feature edges)
|
// Set feature angle (calculate feature edges)
|
||||||
bMesh.setFeatureEdges(minCos);
|
rMesh.setFeatureEdges(minCos);
|
||||||
|
|
||||||
// Collect all feature edges as edge labels
|
// Collect all feature edges as edge labels
|
||||||
labelList markedEdges;
|
labelList markedEdges;
|
||||||
|
|
||||||
collectFeatureEdges(bMesh, markedEdges);
|
collectFeatureEdges(rMesh, markedEdges);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// (new) patch ID for every face in mesh.
|
// (new) patch ID for every face in mesh.
|
||||||
labelList patchIDs(bMesh.mesh().size(), -1);
|
labelList patchIDs(rMesh.mesh().size(), -1);
|
||||||
|
|
||||||
//
|
//
|
||||||
// Fill patchIDs with values for every face by floodfilling without
|
// Fill patchIDs with values for every face by floodfilling without
|
||||||
@ -120,7 +120,7 @@ int main(int argc, char *argv[])
|
|||||||
//
|
//
|
||||||
|
|
||||||
// Current patch number.
|
// Current patch number.
|
||||||
label newPatchi = bMesh.patches().size();
|
label newPatchi = rMesh.patches().size();
|
||||||
|
|
||||||
label suffix = 0;
|
label suffix = 0;
|
||||||
|
|
||||||
@ -141,17 +141,17 @@ int main(int argc, char *argv[])
|
|||||||
{
|
{
|
||||||
patchName = "auto" + name(suffix++);
|
patchName = "auto" + name(suffix++);
|
||||||
}
|
}
|
||||||
while (bMesh.findPatchID(patchName) != -1);
|
while (rMesh.findPatchID(patchName) != -1);
|
||||||
|
|
||||||
bMesh.addPatch(patchName);
|
rMesh.addPatch(patchName);
|
||||||
|
|
||||||
bMesh.changePatchType(patchName, "patch");
|
rMesh.changePatchType(patchName, "patch");
|
||||||
|
|
||||||
|
|
||||||
// Fill visited with all faces reachable from unsetFacei.
|
// Fill visited with all faces reachable from unsetFacei.
|
||||||
boolList visited(bMesh.mesh().size());
|
boolList visited(rMesh.mesh().size());
|
||||||
|
|
||||||
bMesh.markFaces(markedEdges, unsetFacei, visited);
|
rMesh.markFaces(markedEdges, unsetFacei, visited);
|
||||||
|
|
||||||
|
|
||||||
// Assign all visited faces to current patch
|
// Assign all visited faces to current patch
|
||||||
@ -175,7 +175,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
const PtrList<boundaryPatch>& patches = bMesh.patches();
|
const PtrList<repatchPatch>& patches = rMesh.patches();
|
||||||
|
|
||||||
// Create new list of patches with old ones first
|
// Create new list of patches with old ones first
|
||||||
List<polyPatch*> newPatchPtrList(patches.size());
|
List<polyPatch*> newPatchPtrList(patches.size());
|
||||||
@ -202,7 +202,7 @@ int main(int argc, char *argv[])
|
|||||||
// Add new ones with empty size.
|
// Add new ones with empty size.
|
||||||
for (label patchi = newPatchi; patchi < patches.size(); patchi++)
|
for (label patchi = newPatchi; patchi < patches.size(); patchi++)
|
||||||
{
|
{
|
||||||
const boundaryPatch& bp = patches[patchi];
|
const repatchPatch& bp = patches[patchi];
|
||||||
|
|
||||||
newPatchPtrList[newPatchi] = polyPatch::New
|
newPatchPtrList[newPatchi] = polyPatch::New
|
||||||
(
|
(
|
||||||
@ -230,9 +230,9 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
// Change face ordering
|
// Change face ordering
|
||||||
|
|
||||||
// Since bMesh read from mesh there is one to one mapping so we don't
|
// Since rMesh read from mesh there is one to one mapping so we don't
|
||||||
// have to do the geometric stuff.
|
// have to do the geometric stuff.
|
||||||
const labelList& meshFace = bMesh.meshFace();
|
const labelList& meshFace = rMesh.meshFace();
|
||||||
|
|
||||||
forAll(patchIDs, facei)
|
forAll(patchIDs, facei)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -3,7 +3,6 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/meshTools/lnInclude \
|
-I$(LIB_SRC)/meshTools/lnInclude \
|
||||||
-I$(LIB_SRC)/dynamicMesh/lnInclude
|
-I$(LIB_SRC)/dynamicMesh/lnInclude
|
||||||
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-ltriSurface \
|
-ltriSurface \
|
||||||
-lmeshTools \
|
-lmeshTools \
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration | Website: https://openfoam.org
|
\\ / O peration | Website: https://openfoam.org
|
||||||
\\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2021 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -25,14 +25,14 @@ Application
|
|||||||
surfaceToPatch
|
surfaceToPatch
|
||||||
|
|
||||||
Description
|
Description
|
||||||
Reads surface and applies surface regioning to a mesh. Uses boundaryMesh
|
Reads surface and applies surface regioning to a mesh. Uses repatchMesh
|
||||||
to do the hard work.
|
to do the hard work.
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "argList.H"
|
#include "argList.H"
|
||||||
#include "Time.H"
|
#include "Time.H"
|
||||||
#include "boundaryMesh.H"
|
#include "repatchMesh.H"
|
||||||
#include "polyMesh.H"
|
#include "polyMesh.H"
|
||||||
#include "faceSet.H"
|
#include "faceSet.H"
|
||||||
#include "polyTopoChange.H"
|
#include "polyTopoChange.H"
|
||||||
@ -103,7 +103,7 @@ label addPatch(polyMesh& mesh, const word& patchName)
|
|||||||
bool repatchFace
|
bool repatchFace
|
||||||
(
|
(
|
||||||
const polyMesh& mesh,
|
const polyMesh& mesh,
|
||||||
const boundaryMesh& bMesh,
|
const repatchMesh& rMesh,
|
||||||
const labelList& nearest,
|
const labelList& nearest,
|
||||||
const labelList& surfToMeshPatch,
|
const labelList& surfToMeshPatch,
|
||||||
const label facei,
|
const label facei,
|
||||||
@ -117,9 +117,9 @@ bool repatchFace
|
|||||||
if (nearest[bFacei] != -1)
|
if (nearest[bFacei] != -1)
|
||||||
{
|
{
|
||||||
// Use boundary mesh one.
|
// Use boundary mesh one.
|
||||||
label bMeshPatchID = bMesh.whichPatch(nearest[bFacei]);
|
label rMeshPatchID = rMesh.whichPatch(nearest[bFacei]);
|
||||||
|
|
||||||
label patchID = surfToMeshPatch[bMeshPatchID];
|
label patchID = surfToMeshPatch[rMeshPatchID];
|
||||||
|
|
||||||
if (patchID != mesh.boundaryMesh().whichPatch(facei))
|
if (patchID != mesh.boundaryMesh().whichPatch(facei))
|
||||||
{
|
{
|
||||||
@ -230,13 +230,13 @@ int main(int argc, char *argv[])
|
|||||||
Info<< endl;
|
Info<< endl;
|
||||||
|
|
||||||
|
|
||||||
boundaryMesh bMesh;
|
repatchMesh rMesh;
|
||||||
|
|
||||||
// Load in the surface.
|
// Load in the surface.
|
||||||
bMesh.readTriSurface(surfName);
|
rMesh.readTriSurface(surfName);
|
||||||
|
|
||||||
// Add all the boundaryMesh patches to the mesh.
|
// Add all the boundaryMesh patches to the mesh.
|
||||||
const PtrList<boundaryPatch>& bPatches = bMesh.patches();
|
const PtrList<repatchPatch>& bPatches = rMesh.patches();
|
||||||
|
|
||||||
// Map from surface patch ( = boundaryMesh patch) to polyMesh patch
|
// Map from surface patch ( = boundaryMesh patch) to polyMesh patch
|
||||||
labelList patchMap(bPatches.size());
|
labelList patchMap(bPatches.size());
|
||||||
@ -246,10 +246,10 @@ int main(int argc, char *argv[])
|
|||||||
patchMap[i] = addPatch(mesh, bPatches[i].name());
|
patchMap[i] = addPatch(mesh, bPatches[i].name());
|
||||||
}
|
}
|
||||||
|
|
||||||
// Obtain nearest face in bMesh for each boundary face in mesh that
|
// Obtain nearest face in rMesh for each boundary face in mesh that
|
||||||
// is within search span.
|
// is within search span.
|
||||||
// Note: should only determine for faceSet if working with that.
|
// Note: should only determine for faceSet if working with that.
|
||||||
labelList nearest(bMesh.getNearest(mesh, searchSpan));
|
labelList nearest(rMesh.getNearest(mesh, searchSpan));
|
||||||
|
|
||||||
{
|
{
|
||||||
// Dump unmatched faces to faceSet for debugging.
|
// Dump unmatched faces to faceSet for debugging.
|
||||||
@ -285,7 +285,7 @@ int main(int argc, char *argv[])
|
|||||||
{
|
{
|
||||||
label facei = iter.key();
|
label facei = iter.key();
|
||||||
|
|
||||||
if (repatchFace(mesh, bMesh, nearest, patchMap, facei, meshMod))
|
if (repatchFace(mesh, rMesh, nearest, patchMap, facei, meshMod))
|
||||||
{
|
{
|
||||||
nChanged++;
|
nChanged++;
|
||||||
}
|
}
|
||||||
@ -297,7 +297,7 @@ int main(int argc, char *argv[])
|
|||||||
{
|
{
|
||||||
label facei = mesh.nInternalFaces() + bFacei;
|
label facei = mesh.nInternalFaces() + bFacei;
|
||||||
|
|
||||||
if (repatchFace(mesh, bMesh, nearest, patchMap, facei, meshMod))
|
if (repatchFace(mesh, rMesh, nearest, patchMap, facei, meshMod))
|
||||||
{
|
{
|
||||||
nChanged++;
|
nChanged++;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -35,6 +35,7 @@ SourceFiles
|
|||||||
#define codedFunction1Template_H
|
#define codedFunction1Template_H
|
||||||
|
|
||||||
#include "Function1.H"
|
#include "Function1.H"
|
||||||
|
#include "fieldTypes.H"
|
||||||
|
|
||||||
//{{{ begin codeInclude
|
//{{{ begin codeInclude
|
||||||
${codeInclude}
|
${codeInclude}
|
||||||
|
|||||||
@ -53,8 +53,9 @@ slidingInterface/decoupleSlidingInterface.C
|
|||||||
|
|
||||||
perfectInterface/perfectInterface.C
|
perfectInterface/perfectInterface.C
|
||||||
|
|
||||||
boundaryMesh/boundaryMesh.C
|
repatchMesh/repatchMesh.C
|
||||||
boundaryPatch/boundaryPatch.C
|
repatchMesh/repatchPatch.C
|
||||||
|
|
||||||
setUpdater/setUpdater.C
|
setUpdater/setUpdater.C
|
||||||
|
|
||||||
meshModifiers = meshCut/meshModifiers
|
meshModifiers = meshCut/meshModifiers
|
||||||
|
|||||||
@ -1,51 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration | Website: https://openfoam.org
|
|
||||||
\\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation
|
|
||||||
\\/ 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 3 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, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
Typedef
|
|
||||||
Foam::bMesh
|
|
||||||
|
|
||||||
Description
|
|
||||||
Holder of faceList and points. (v.s. e.g. primitivePatch which references
|
|
||||||
points)
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#ifndef bMesh_H
|
|
||||||
#define bMesh_H
|
|
||||||
|
|
||||||
#include "PrimitivePatch.H"
|
|
||||||
#include "faceList.H"
|
|
||||||
#include "pointField.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
typedef PrimitivePatch<faceList, const pointField> bMesh;
|
|
||||||
}
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration | Website: https://openfoam.org
|
\\ / O peration | Website: https://openfoam.org
|
||||||
\\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2021 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -22,22 +22,21 @@ License
|
|||||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Class
|
Class
|
||||||
Foam::boundaryMesh
|
Foam::repatchMesh
|
||||||
|
|
||||||
Description
|
Description
|
||||||
Addressing for all faces on surface of mesh. Can either be read
|
Addressing for all faces on surface of mesh. Can either be read
|
||||||
from polyMesh or from triSurface. Used for repatching existing meshes.
|
from polyMesh or from triSurface. Used for repatching existing meshes.
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
boundaryMesh.C
|
repatchMesh.C
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#ifndef boundaryMesh_H
|
#ifndef repatchMesh_H
|
||||||
#define boundaryMesh_H
|
#define repatchMesh_H
|
||||||
|
|
||||||
#include "bMesh.H"
|
#include "repatchPatch.H"
|
||||||
#include "boundaryPatch.H"
|
|
||||||
#include "PrimitivePatch.H"
|
#include "PrimitivePatch.H"
|
||||||
#include "PtrList.H"
|
#include "PtrList.H"
|
||||||
#include "polyPatchList.H"
|
#include "polyPatchList.H"
|
||||||
@ -49,16 +48,25 @@ namespace Foam
|
|||||||
{
|
{
|
||||||
|
|
||||||
// Forward declaration of classes
|
// Forward declaration of classes
|
||||||
class Time;
|
|
||||||
class polyMesh;
|
class polyMesh;
|
||||||
class primitiveMesh;
|
class primitiveMesh;
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------*\
|
||||||
Class boundaryMesh Declaration
|
Class repatchMesh Declaration
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
class boundaryMesh
|
class repatchMesh
|
||||||
{
|
{
|
||||||
|
public:
|
||||||
|
|
||||||
|
// Public Typedefs
|
||||||
|
|
||||||
|
//- Type of the mesh
|
||||||
|
typedef PrimitivePatch<faceList, const pointField> rMesh;
|
||||||
|
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
// Static data
|
// Static data
|
||||||
|
|
||||||
//- Normal along which to divide faces into categories
|
//- Normal along which to divide faces into categories
|
||||||
@ -74,20 +82,15 @@ class boundaryMesh
|
|||||||
// Private Data
|
// Private Data
|
||||||
|
|
||||||
//- All boundary mesh data. Reconstructed every time faces are repatched
|
//- All boundary mesh data. Reconstructed every time faces are repatched
|
||||||
bMesh* meshPtr_;
|
autoPtr<rMesh> meshPtr_;
|
||||||
|
|
||||||
//- Patches. Reconstructed every time faces are repatched.
|
//- Patches. Reconstructed every time faces are repatched.
|
||||||
PtrList<boundaryPatch> patches_;
|
PtrList<repatchPatch> patches_;
|
||||||
|
|
||||||
//- For every face in mesh() gives corresponding polyMesh face
|
//- For every face in mesh() gives corresponding polyMesh face
|
||||||
// (not sensible if mesh read from triSurface)
|
// (not sensible if mesh read from triSurface)
|
||||||
labelList meshFace_;
|
labelList meshFace_;
|
||||||
|
|
||||||
|
|
||||||
//
|
|
||||||
// Edge handling
|
|
||||||
//
|
|
||||||
|
|
||||||
//- Points referenced by feature edges.
|
//- Points referenced by feature edges.
|
||||||
pointField featurePoints_;
|
pointField featurePoints_;
|
||||||
|
|
||||||
@ -104,9 +107,6 @@ class boundaryMesh
|
|||||||
// Indices into featureEdges_.
|
// Indices into featureEdges_.
|
||||||
labelListList featureSegments_;
|
labelListList featureSegments_;
|
||||||
|
|
||||||
//- Additional edges (indices of mesh edges)
|
|
||||||
labelList extraEdges_;
|
|
||||||
|
|
||||||
|
|
||||||
// Private Member Functions
|
// Private Member Functions
|
||||||
|
|
||||||
@ -124,24 +124,6 @@ class boundaryMesh
|
|||||||
boolList& featVisited
|
boolList& featVisited
|
||||||
) const;
|
) const;
|
||||||
|
|
||||||
//- Do point-edge walk to determine nearest (to edgeI). Stops if
|
|
||||||
// distance >= maxDistance. Used to determine edges close to seed
|
|
||||||
// point.
|
|
||||||
void markEdges
|
|
||||||
(
|
|
||||||
const label maxDistance,
|
|
||||||
const label edgeI,
|
|
||||||
const label distance,
|
|
||||||
labelList& minDistance,
|
|
||||||
DynamicList<label>& visited
|
|
||||||
) const;
|
|
||||||
|
|
||||||
//- Get index of polypatch by name
|
|
||||||
label findPatchID(const polyPatchList&, const word&) const;
|
|
||||||
|
|
||||||
//- Get index of patch for face
|
|
||||||
label whichPatch(const polyPatchList&, const label) const;
|
|
||||||
|
|
||||||
//- Gets labels of changed faces and propagates them to the edges.
|
//- Gets labels of changed faces and propagates them to the edges.
|
||||||
// Returns labels of edges changed. Fills edgeRegion of visited edges
|
// Returns labels of edges changed. Fills edgeRegion of visited edges
|
||||||
// with current region.
|
// with current region.
|
||||||
@ -175,31 +157,30 @@ class boundaryMesh
|
|||||||
public:
|
public:
|
||||||
|
|
||||||
//- Runtime type information
|
//- Runtime type information
|
||||||
ClassName("boundaryMesh");
|
ClassName("repatchMesh");
|
||||||
|
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct null
|
//- Construct null
|
||||||
boundaryMesh();
|
repatchMesh();
|
||||||
|
|
||||||
//- Disallow default bitwise copy construction
|
//- Disallow default bitwise copy construction
|
||||||
boundaryMesh(const boundaryMesh&) = delete;
|
repatchMesh(const repatchMesh&) = delete;
|
||||||
|
|
||||||
|
|
||||||
//- Destructor
|
//- Destructor
|
||||||
~boundaryMesh();
|
~repatchMesh();
|
||||||
|
|
||||||
void clearOut();
|
|
||||||
|
|
||||||
|
|
||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
// Access
|
// Access
|
||||||
|
|
||||||
const bMesh& mesh() const
|
//- Access the boundary mesh
|
||||||
|
const rMesh& mesh() const
|
||||||
{
|
{
|
||||||
if (!meshPtr_)
|
if (!meshPtr_.valid())
|
||||||
{
|
{
|
||||||
FatalErrorInFunction
|
FatalErrorInFunction
|
||||||
<< "No mesh available. Probably mesh not yet"
|
<< "No mesh available. Probably mesh not yet"
|
||||||
@ -208,12 +189,12 @@ public:
|
|||||||
return *meshPtr_;
|
return *meshPtr_;
|
||||||
}
|
}
|
||||||
|
|
||||||
const PtrList<boundaryPatch>& patches() const
|
//- Access the patches
|
||||||
|
const PtrList<repatchPatch>& patches() const
|
||||||
{
|
{
|
||||||
return patches_;
|
return patches_;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//- Label of original face in polyMesh (before patchify(...))
|
//- Label of original face in polyMesh (before patchify(...))
|
||||||
const labelList& meshFace() const
|
const labelList& meshFace() const
|
||||||
{
|
{
|
||||||
@ -250,25 +231,16 @@ public:
|
|||||||
return featureSegments_;
|
return featureSegments_;
|
||||||
}
|
}
|
||||||
|
|
||||||
//- Indices into edges of additional edges.
|
|
||||||
const labelList& extraEdges() const
|
|
||||||
{
|
|
||||||
return extraEdges_;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Edit
|
// Edit
|
||||||
|
|
||||||
//- Read from boundaryMesh of polyMesh.
|
//- Read from repatchMesh of polyMesh.
|
||||||
void read(const polyMesh&);
|
void read(const polyMesh&);
|
||||||
|
|
||||||
//- Read from triSurface
|
//- Read from triSurface
|
||||||
void readTriSurface(const fileName&);
|
void readTriSurface(const fileName&);
|
||||||
|
|
||||||
//- Write to file.
|
//- Get rMesh index of nearest face for every boundary face in
|
||||||
void writeTriSurface(const fileName&) const;
|
|
||||||
|
|
||||||
//- Get bMesh index of nearest face for every boundary face in
|
|
||||||
// pMesh. Gets passed initial search box. If not found
|
// pMesh. Gets passed initial search box. If not found
|
||||||
// returns -1 for the face.
|
// returns -1 for the face.
|
||||||
labelList getNearest
|
labelList getNearest
|
||||||
@ -277,20 +249,6 @@ public:
|
|||||||
const vector& searchSpan
|
const vector& searchSpan
|
||||||
) const;
|
) const;
|
||||||
|
|
||||||
//- Take over patches onto polyMesh from nearest face in *this
|
|
||||||
// (from call to getNearest). Insert as
|
|
||||||
// -new set of patches (newMesh.addPatches)
|
|
||||||
// -topoChanges to change faces.
|
|
||||||
// nearest is list of nearest face in *this for every boundary
|
|
||||||
// face. oldPatches is list of existing patches in mesh.
|
|
||||||
// newMesh is the mesh to which the new patches are added.
|
|
||||||
// (so has to be constructed without patches).
|
|
||||||
void patchify
|
|
||||||
(
|
|
||||||
const labelList& nearest,
|
|
||||||
const polyBoundaryMesh& oldPatches,
|
|
||||||
polyMesh& newMesh
|
|
||||||
) const;
|
|
||||||
|
|
||||||
// Patches
|
// Patches
|
||||||
|
|
||||||
@ -300,9 +258,6 @@ public:
|
|||||||
//- Get index of patch by name
|
//- Get index of patch by name
|
||||||
label findPatchID(const word& patchName) const;
|
label findPatchID(const word& patchName) const;
|
||||||
|
|
||||||
//- Get names of patches
|
|
||||||
wordList patchNames() const;
|
|
||||||
|
|
||||||
//- Add to back of patch list.
|
//- Add to back of patch list.
|
||||||
void addPatch(const word& patchName);
|
void addPatch(const word& patchName);
|
||||||
|
|
||||||
@ -312,10 +267,6 @@ public:
|
|||||||
//- Change patch.
|
//- Change patch.
|
||||||
void changePatchType(const word& patchName, const word& type);
|
void changePatchType(const word& patchName, const word& type);
|
||||||
|
|
||||||
//- Recalculate face ordering and patches. Return old to new
|
|
||||||
// mapping.
|
|
||||||
void changeFaces(const labelList& patchIDs, labelList& oldToNew);
|
|
||||||
|
|
||||||
|
|
||||||
// Edges
|
// Edges
|
||||||
|
|
||||||
@ -323,50 +274,6 @@ public:
|
|||||||
// to angle of faces across edge
|
// to angle of faces across edge
|
||||||
void setFeatureEdges(const scalar minCos);
|
void setFeatureEdges(const scalar minCos);
|
||||||
|
|
||||||
//- Set extraEdges to edges 'near' to edgeI. Uses point-edge walk
|
|
||||||
// to determine 'near'.
|
|
||||||
void setExtraEdges(const label edgeI);
|
|
||||||
|
|
||||||
|
|
||||||
// Faces
|
|
||||||
|
|
||||||
//- Simple triangulation of face subset. Returns number of triangles
|
|
||||||
// needed.
|
|
||||||
label getNTris(const label facei) const;
|
|
||||||
|
|
||||||
//- Simple triangulation of face subset. TotalNTris is total number
|
|
||||||
// of triangles, nTris is per face number of triangles.
|
|
||||||
label getNTris
|
|
||||||
(
|
|
||||||
const label startFacei,
|
|
||||||
const label nFaces,
|
|
||||||
labelList& nTris
|
|
||||||
) const;
|
|
||||||
|
|
||||||
//- Simple triangulation of face subset. TotalNTris is total number
|
|
||||||
// of triangles (from call to getNTris)
|
|
||||||
// triVerts is triangle vertices, three per triangle.
|
|
||||||
void triangulate
|
|
||||||
(
|
|
||||||
const label startFacei,
|
|
||||||
const label nFaces,
|
|
||||||
const label totalNTris,
|
|
||||||
labelList& triVerts
|
|
||||||
) const;
|
|
||||||
|
|
||||||
//- Number of points used in face subset.
|
|
||||||
label getNPoints(const label startFacei, const label nFaces) const;
|
|
||||||
|
|
||||||
//- Same as triangulate but in local vertex numbering.
|
|
||||||
// (Map returned).
|
|
||||||
void triangulateLocal
|
|
||||||
(
|
|
||||||
const label startFacei,
|
|
||||||
const label nFaces,
|
|
||||||
const label totalNTris,
|
|
||||||
labelList& triVerts,
|
|
||||||
labelList& localToGlobal
|
|
||||||
) const;
|
|
||||||
|
|
||||||
// Other
|
// Other
|
||||||
|
|
||||||
@ -382,7 +289,7 @@ public:
|
|||||||
// Member Operators
|
// Member Operators
|
||||||
|
|
||||||
//- Disallow default bitwise assignment
|
//- Disallow default bitwise assignment
|
||||||
void operator=(const boundaryMesh&) = delete;
|
void operator=(const repatchMesh&) = delete;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration | Website: https://openfoam.org
|
\\ / O peration | Website: https://openfoam.org
|
||||||
\\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2021 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -23,13 +23,13 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "boundaryPatch.H"
|
#include "repatchPatch.H"
|
||||||
#include "dictionary.H"
|
#include "dictionary.H"
|
||||||
#include "Ostream.H"
|
#include "Ostream.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::boundaryPatch::boundaryPatch
|
Foam::repatchPatch::repatchPatch
|
||||||
(
|
(
|
||||||
const word& name,
|
const word& name,
|
||||||
const label index,
|
const label index,
|
||||||
@ -44,7 +44,7 @@ Foam::boundaryPatch::boundaryPatch
|
|||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
Foam::boundaryPatch::boundaryPatch
|
Foam::repatchPatch::repatchPatch
|
||||||
(
|
(
|
||||||
const word& name,
|
const word& name,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
@ -57,7 +57,7 @@ Foam::boundaryPatch::boundaryPatch
|
|||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
Foam::boundaryPatch::boundaryPatch(const boundaryPatch& p, const label index)
|
Foam::repatchPatch::repatchPatch(const repatchPatch& p, const label index)
|
||||||
:
|
:
|
||||||
patchIdentifier(p.name(), index, p.physicalType()),
|
patchIdentifier(p.name(), index, p.physicalType()),
|
||||||
size_(p.size()),
|
size_(p.size()),
|
||||||
@ -65,21 +65,21 @@ Foam::boundaryPatch::boundaryPatch(const boundaryPatch& p, const label index)
|
|||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
Foam::autoPtr<Foam::boundaryPatch> Foam::boundaryPatch::clone() const
|
Foam::autoPtr<Foam::repatchPatch> Foam::repatchPatch::clone() const
|
||||||
{
|
{
|
||||||
return autoPtr<boundaryPatch>(new boundaryPatch(*this));
|
return autoPtr<repatchPatch>(new repatchPatch(*this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::boundaryPatch::~boundaryPatch()
|
Foam::repatchPatch::~repatchPatch()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
void Foam::boundaryPatch::write(Ostream& os) const
|
void Foam::repatchPatch::write(Ostream& os) const
|
||||||
{
|
{
|
||||||
patchIdentifier::write(os);
|
patchIdentifier::write(os);
|
||||||
writeEntry(os, "nFaces", size_);
|
writeEntry(os, "nFaces", size_);
|
||||||
@ -89,10 +89,10 @@ void Foam::boundaryPatch::write(Ostream& os) const
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * Friend Operators * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Friend Operators * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::Ostream& Foam::operator<<(Ostream& os, const boundaryPatch& p)
|
Foam::Ostream& Foam::operator<<(Ostream& os, const repatchPatch& p)
|
||||||
{
|
{
|
||||||
p.write(os);
|
p.write(os);
|
||||||
os.check("Ostream& operator<<(Ostream& f, const boundaryPatch&)");
|
os.check("Ostream& operator<<(Ostream& f, const repatchPatch&)");
|
||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration | Website: https://openfoam.org
|
\\ / O peration | Website: https://openfoam.org
|
||||||
\\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2021 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -22,19 +22,19 @@ License
|
|||||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Class
|
Class
|
||||||
Foam::boundaryPatch
|
Foam::repatchPatch
|
||||||
|
|
||||||
Description
|
Description
|
||||||
Like polyPatch but without reference to mesh. patchIdentifier::index
|
Like polyPatch but without reference to mesh. patchIdentifier::index
|
||||||
is not used. Used in boundaryMesh to hold data on patches.
|
is not used. Used in repatchMesh to hold data on patches.
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
boundaryPatch.C
|
repatchPatch.C
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#ifndef boundaryPatch_H
|
#ifndef repatchPatch_H
|
||||||
#define boundaryPatch_H
|
#define repatchPatch_H
|
||||||
|
|
||||||
#include "patchIdentifier.H"
|
#include "patchIdentifier.H"
|
||||||
#include "autoPtr.H"
|
#include "autoPtr.H"
|
||||||
@ -46,16 +46,16 @@ namespace Foam
|
|||||||
|
|
||||||
// Forward declaration of friend functions and operators
|
// Forward declaration of friend functions and operators
|
||||||
|
|
||||||
class boundaryPatch;
|
class repatchPatch;
|
||||||
|
|
||||||
Ostream& operator<<(Ostream&, const boundaryPatch&);
|
Ostream& operator<<(Ostream&, const repatchPatch&);
|
||||||
|
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------*\
|
||||||
Class boundaryPatch Declaration
|
Class repatchPatch Declaration
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
class boundaryPatch
|
class repatchPatch
|
||||||
:
|
:
|
||||||
public patchIdentifier
|
public patchIdentifier
|
||||||
{
|
{
|
||||||
@ -69,7 +69,7 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct from components
|
//- Construct from components
|
||||||
boundaryPatch
|
repatchPatch
|
||||||
(
|
(
|
||||||
const word& name,
|
const word& name,
|
||||||
const label index,
|
const label index,
|
||||||
@ -79,7 +79,7 @@ public:
|
|||||||
);
|
);
|
||||||
|
|
||||||
//- Construct from dictionary
|
//- Construct from dictionary
|
||||||
boundaryPatch
|
repatchPatch
|
||||||
(
|
(
|
||||||
const word& name,
|
const word& name,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
@ -87,14 +87,14 @@ public:
|
|||||||
);
|
);
|
||||||
|
|
||||||
//- Copy constructor, resetting the index
|
//- Copy constructor, resetting the index
|
||||||
boundaryPatch(const boundaryPatch&, const label index);
|
repatchPatch(const repatchPatch&, const label index);
|
||||||
|
|
||||||
//- Clone
|
//- Clone
|
||||||
autoPtr<boundaryPatch> clone() const;
|
autoPtr<repatchPatch> clone() const;
|
||||||
|
|
||||||
|
|
||||||
//- Destructor
|
//- Destructor
|
||||||
~boundaryPatch();
|
~repatchPatch();
|
||||||
|
|
||||||
|
|
||||||
// Member Functions
|
// Member Functions
|
||||||
@ -126,7 +126,7 @@ public:
|
|||||||
|
|
||||||
// Ostream Operator
|
// Ostream Operator
|
||||||
|
|
||||||
friend Ostream& operator<<(Ostream&, const boundaryPatch&);
|
friend Ostream& operator<<(Ostream&, const repatchPatch&);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,243 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration | Website: https://openfoam.org
|
|
||||||
\\ / A nd | Version: dev
|
|
||||||
\\/ M anipulation |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class featureEdgeMesh;
|
|
||||||
location "constant/geometry";
|
|
||||||
object rotorBlades.eMesh;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
|
|
||||||
// points:
|
|
||||||
|
|
||||||
104
|
|
||||||
(
|
|
||||||
(0.0375 9.18455e-18 0.04)
|
|
||||||
(2.29614e-18 -0.0375 0.04)
|
|
||||||
(0.0125 3.06152e-18 0.04)
|
|
||||||
(-0.0375 -4.59227e-18 0.04)
|
|
||||||
(7.65379e-19 -0.0125 0.04)
|
|
||||||
(-6.88841e-18 0.0375 0.04)
|
|
||||||
(-0.0125 -1.53076e-18 0.04)
|
|
||||||
(0.0375 9.18455e-18 0.08)
|
|
||||||
(-2.29614e-18 0.0125 0.04)
|
|
||||||
(2.29614e-18 -0.0375 0.08)
|
|
||||||
(0.0125 3.06152e-18 0.08)
|
|
||||||
(-0.0375 -4.59227e-18 0.08)
|
|
||||||
(7.65379e-19 -0.0125 0.08)
|
|
||||||
(-6.88841e-18 0.0375 0.08)
|
|
||||||
(-0.0125 -1.53076e-18 0.08)
|
|
||||||
(-2.29614e-18 0.0125 0.08)
|
|
||||||
(-6.88841e-18 0.0375 0.055)
|
|
||||||
(-6.88841e-18 0.0375 0.06)
|
|
||||||
(0.0375 9.18455e-18 0.065)
|
|
||||||
(0.0375 9.18455e-18 0.06)
|
|
||||||
(-0.0125 -1.53076e-18 0.06)
|
|
||||||
(-0.0125 -1.53076e-18 0.055)
|
|
||||||
(-4.13305e-18 0.0225 0.04)
|
|
||||||
(-5.0515e-18 0.0275 0.04)
|
|
||||||
(0.0225 5.51073e-18 0.08)
|
|
||||||
(0.0275 6.73533e-18 0.08)
|
|
||||||
(2.29614e-18 -0.0375 0.06)
|
|
||||||
(2.29614e-18 -0.0375 0.065)
|
|
||||||
(-2.29614e-18 0.0125 0.06)
|
|
||||||
(-2.29614e-18 0.0125 0.055)
|
|
||||||
(0.0125 3.06152e-18 0.06)
|
|
||||||
(0.0125 3.06152e-18 0.065)
|
|
||||||
(0.0325 7.95994e-18 0.04)
|
|
||||||
(0.0275 6.73533e-18 0.04)
|
|
||||||
(1.68383e-18 -0.0275 0.08)
|
|
||||||
(1.37768e-18 -0.0225 0.08)
|
|
||||||
(-0.0375 -4.59227e-18 0.06)
|
|
||||||
(-0.0375 -4.59227e-18 0.065)
|
|
||||||
(7.65379e-19 -0.0125 0.065)
|
|
||||||
(7.65379e-19 -0.0125 0.06)
|
|
||||||
(1.68383e-18 -0.0275 0.04)
|
|
||||||
(1.98999e-18 -0.0325 0.04)
|
|
||||||
(-0.0275 -3.36767e-18 0.08)
|
|
||||||
(-0.0225 -2.75536e-18 0.08)
|
|
||||||
(-6.88841e-18 0.0375 0.065)
|
|
||||||
(0.0375 9.18455e-18 0.07)
|
|
||||||
(-0.0125 -1.53076e-18 0.065)
|
|
||||||
(-0.0275 -3.36767e-18 0.04)
|
|
||||||
(-0.0325 -3.97997e-18 0.04)
|
|
||||||
(-5.0515e-18 0.0275 0.08)
|
|
||||||
(-4.13305e-18 0.0225 0.08)
|
|
||||||
(2.29614e-18 -0.0375 0.07)
|
|
||||||
(-2.29614e-18 0.0125 0.065)
|
|
||||||
(0.0125 3.06152e-18 0.07)
|
|
||||||
(-5.96996e-18 0.0325 0.04)
|
|
||||||
(0.0325 7.95994e-18 0.08)
|
|
||||||
(-0.0375 -4.59227e-18 0.07)
|
|
||||||
(7.65379e-19 -0.0125 0.07)
|
|
||||||
(0.0375 9.18455e-18 0.045)
|
|
||||||
(1.98999e-18 -0.0325 0.08)
|
|
||||||
(-6.88841e-18 0.0375 0.07)
|
|
||||||
(0.0375 9.18455e-18 0.075)
|
|
||||||
(-0.0125 -1.53076e-18 0.07)
|
|
||||||
(2.29614e-18 -0.0375 0.045)
|
|
||||||
(0.0125 3.06152e-18 0.045)
|
|
||||||
(0.0175 4.28612e-18 0.04)
|
|
||||||
(-0.0325 -3.97997e-18 0.08)
|
|
||||||
(2.29614e-18 -0.0375 0.075)
|
|
||||||
(-2.29614e-18 0.0125 0.07)
|
|
||||||
(0.0125 3.06152e-18 0.075)
|
|
||||||
(-0.0375 -4.59227e-18 0.045)
|
|
||||||
(1.07153e-18 -0.0175 0.04)
|
|
||||||
(7.65379e-19 -0.0125 0.045)
|
|
||||||
(-5.96996e-18 0.0325 0.08)
|
|
||||||
(-0.0375 -4.59227e-18 0.075)
|
|
||||||
(7.65379e-19 -0.0125 0.075)
|
|
||||||
(-6.88841e-18 0.0375 0.045)
|
|
||||||
(0.0375 9.18455e-18 0.05)
|
|
||||||
(-0.0175 -2.14306e-18 0.04)
|
|
||||||
(-0.0125 -1.53076e-18 0.045)
|
|
||||||
(-6.88841e-18 0.0375 0.075)
|
|
||||||
(-0.0125 -1.53076e-18 0.075)
|
|
||||||
(2.29614e-18 -0.0375 0.05)
|
|
||||||
(-3.21459e-18 0.0175 0.04)
|
|
||||||
(-2.29614e-18 0.0125 0.045)
|
|
||||||
(0.0125 3.06152e-18 0.05)
|
|
||||||
(-2.29614e-18 0.0125 0.075)
|
|
||||||
(0.0175 4.28612e-18 0.08)
|
|
||||||
(-0.0375 -4.59227e-18 0.05)
|
|
||||||
(7.65379e-19 -0.0125 0.05)
|
|
||||||
(0.0225 5.51073e-18 0.04)
|
|
||||||
(1.07153e-18 -0.0175 0.08)
|
|
||||||
(-6.88841e-18 0.0375 0.05)
|
|
||||||
(0.0375 9.18455e-18 0.055)
|
|
||||||
(-0.0125 -1.53076e-18 0.05)
|
|
||||||
(1.37768e-18 -0.0225 0.04)
|
|
||||||
(-0.0175 -2.14306e-18 0.08)
|
|
||||||
(2.29614e-18 -0.0375 0.055)
|
|
||||||
(-2.29614e-18 0.0125 0.05)
|
|
||||||
(0.0125 3.06152e-18 0.055)
|
|
||||||
(-0.0225 -2.75536e-18 0.04)
|
|
||||||
(-3.21459e-18 0.0175 0.08)
|
|
||||||
(-0.0375 -4.59227e-18 0.055)
|
|
||||||
(7.65379e-19 -0.0125 0.055)
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
// edges:
|
|
||||||
|
|
||||||
104
|
|
||||||
(
|
|
||||||
(16 17)
|
|
||||||
(18 19)
|
|
||||||
(20 21)
|
|
||||||
(22 23)
|
|
||||||
(24 25)
|
|
||||||
(26 27)
|
|
||||||
(28 29)
|
|
||||||
(30 31)
|
|
||||||
(32 33)
|
|
||||||
(34 35)
|
|
||||||
(36 37)
|
|
||||||
(38 39)
|
|
||||||
(40 41)
|
|
||||||
(42 43)
|
|
||||||
(17 44)
|
|
||||||
(45 18)
|
|
||||||
(46 20)
|
|
||||||
(47 48)
|
|
||||||
(49 50)
|
|
||||||
(27 51)
|
|
||||||
(52 28)
|
|
||||||
(31 53)
|
|
||||||
(23 54)
|
|
||||||
(25 55)
|
|
||||||
(37 56)
|
|
||||||
(57 38)
|
|
||||||
(0 32)
|
|
||||||
(58 0)
|
|
||||||
(59 34)
|
|
||||||
(44 60)
|
|
||||||
(61 45)
|
|
||||||
(62 46)
|
|
||||||
(41 1)
|
|
||||||
(1 63)
|
|
||||||
(2 64)
|
|
||||||
(65 2)
|
|
||||||
(66 42)
|
|
||||||
(51 67)
|
|
||||||
(68 52)
|
|
||||||
(53 69)
|
|
||||||
(48 3)
|
|
||||||
(3 70)
|
|
||||||
(4 71)
|
|
||||||
(72 4)
|
|
||||||
(73 49)
|
|
||||||
(56 74)
|
|
||||||
(75 57)
|
|
||||||
(54 5)
|
|
||||||
(5 76)
|
|
||||||
(77 58)
|
|
||||||
(6 78)
|
|
||||||
(79 6)
|
|
||||||
(60 80)
|
|
||||||
(7 61)
|
|
||||||
(55 7)
|
|
||||||
(81 62)
|
|
||||||
(63 82)
|
|
||||||
(8 83)
|
|
||||||
(84 8)
|
|
||||||
(64 85)
|
|
||||||
(9 59)
|
|
||||||
(67 9)
|
|
||||||
(86 68)
|
|
||||||
(69 10)
|
|
||||||
(10 87)
|
|
||||||
(70 88)
|
|
||||||
(89 72)
|
|
||||||
(90 65)
|
|
||||||
(11 66)
|
|
||||||
(74 11)
|
|
||||||
(12 75)
|
|
||||||
(91 12)
|
|
||||||
(76 92)
|
|
||||||
(93 77)
|
|
||||||
(94 79)
|
|
||||||
(71 95)
|
|
||||||
(13 73)
|
|
||||||
(80 13)
|
|
||||||
(14 81)
|
|
||||||
(96 14)
|
|
||||||
(82 97)
|
|
||||||
(98 84)
|
|
||||||
(85 99)
|
|
||||||
(78 100)
|
|
||||||
(15 86)
|
|
||||||
(101 15)
|
|
||||||
(88 102)
|
|
||||||
(103 89)
|
|
||||||
(83 22)
|
|
||||||
(87 24)
|
|
||||||
(92 16)
|
|
||||||
(19 93)
|
|
||||||
(21 94)
|
|
||||||
(33 90)
|
|
||||||
(35 91)
|
|
||||||
(97 26)
|
|
||||||
(29 98)
|
|
||||||
(99 30)
|
|
||||||
(95 40)
|
|
||||||
(43 96)
|
|
||||||
(102 36)
|
|
||||||
(39 103)
|
|
||||||
(100 47)
|
|
||||||
(50 101)
|
|
||||||
)
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,739 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration | Website: https://openfoam.org
|
|
||||||
\\ / A nd | Version: dev
|
|
||||||
\\/ M anipulation |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class featureEdgeMesh;
|
|
||||||
location "constant/geometry";
|
|
||||||
object statorBlades.eMesh;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
|
|
||||||
// points:
|
|
||||||
|
|
||||||
352
|
|
||||||
(
|
|
||||||
(0.08 1.95937e-17 0)
|
|
||||||
(4.89843e-18 -0.08 0)
|
|
||||||
(-0.08 -9.79685e-18 0)
|
|
||||||
(-1.46953e-17 0.08 0)
|
|
||||||
(0.1 2.44921e-17 0)
|
|
||||||
(6.12303e-18 -0.1 0)
|
|
||||||
(-0.1 -1.22461e-17 0)
|
|
||||||
(-1.83691e-17 0.1 0)
|
|
||||||
(0.08 1.95937e-17 0.2)
|
|
||||||
(4.89843e-18 -0.08 0.2)
|
|
||||||
(-0.08 -9.79685e-18 0.2)
|
|
||||||
(-1.46953e-17 0.08 0.2)
|
|
||||||
(0.1 2.44921e-17 0.2)
|
|
||||||
(6.12303e-18 -0.1 0.2)
|
|
||||||
(-0.1 -1.22461e-17 0.2)
|
|
||||||
(-1.83691e-17 0.1 0.2)
|
|
||||||
(-1.83691e-17 0.1 0.13)
|
|
||||||
(-1.83691e-17 0.1 0.135)
|
|
||||||
(0.08 1.95937e-17 0.065)
|
|
||||||
(0.08 1.95937e-17 0.07)
|
|
||||||
(0.08 1.95937e-17 0.135)
|
|
||||||
(0.08 1.95937e-17 0.14)
|
|
||||||
(4.89843e-18 -0.08 0.07)
|
|
||||||
(4.89843e-18 -0.08 0.065)
|
|
||||||
(4.89843e-18 -0.08 0.14)
|
|
||||||
(4.89843e-18 -0.08 0.135)
|
|
||||||
(0.1 2.44921e-17 0.02)
|
|
||||||
(0.1 2.44921e-17 0.015)
|
|
||||||
(-0.08 -9.79685e-18 0.07)
|
|
||||||
(-0.08 -9.79685e-18 0.065)
|
|
||||||
(0.1 2.44921e-17 0.09)
|
|
||||||
(0.1 2.44921e-17 0.085)
|
|
||||||
(-0.08 -9.79685e-18 0.14)
|
|
||||||
(-0.08 -9.79685e-18 0.135)
|
|
||||||
(6.12303e-18 -0.1 0.015)
|
|
||||||
(6.12303e-18 -0.1 0.02)
|
|
||||||
(-1.46953e-17 0.08 0.07)
|
|
||||||
(-1.46953e-17 0.08 0.065)
|
|
||||||
(0.1 2.44921e-17 0.16)
|
|
||||||
(0.1 2.44921e-17 0.155)
|
|
||||||
(6.12303e-18 -0.1 0.085)
|
|
||||||
(6.12303e-18 -0.1 0.09)
|
|
||||||
(-0.1 -1.22461e-17 0.015)
|
|
||||||
(-0.1 -1.22461e-17 0.02)
|
|
||||||
(-1.46953e-17 0.08 0.14)
|
|
||||||
(-1.46953e-17 0.08 0.135)
|
|
||||||
(6.12303e-18 -0.1 0.155)
|
|
||||||
(6.12303e-18 -0.1 0.16)
|
|
||||||
(-0.1 -1.22461e-17 0.085)
|
|
||||||
(-0.1 -1.22461e-17 0.09)
|
|
||||||
(-1.83691e-17 0.1 0.015)
|
|
||||||
(-1.83691e-17 0.1 0.02)
|
|
||||||
(-0.1 -1.22461e-17 0.155)
|
|
||||||
(-0.1 -1.22461e-17 0.16)
|
|
||||||
(-1.83691e-17 0.1 0.085)
|
|
||||||
(-1.83691e-17 0.1 0.09)
|
|
||||||
(0.08 1.95937e-17 0.02)
|
|
||||||
(0.08 1.95937e-17 0.025)
|
|
||||||
(-1.83691e-17 0.1 0.155)
|
|
||||||
(-1.83691e-17 0.1 0.16)
|
|
||||||
(0.08 1.95937e-17 0.09)
|
|
||||||
(0.08 1.95937e-17 0.095)
|
|
||||||
(4.89843e-18 -0.08 0.025)
|
|
||||||
(4.89843e-18 -0.08 0.02)
|
|
||||||
(0.08 1.95937e-17 0.16)
|
|
||||||
(0.08 1.95937e-17 0.165)
|
|
||||||
(4.89843e-18 -0.08 0.095)
|
|
||||||
(4.89843e-18 -0.08 0.09)
|
|
||||||
(-0.08 -9.79685e-18 0.025)
|
|
||||||
(-0.08 -9.79685e-18 0.02)
|
|
||||||
(4.89843e-18 -0.08 0.165)
|
|
||||||
(4.89843e-18 -0.08 0.16)
|
|
||||||
(0.1 2.44921e-17 0.045)
|
|
||||||
(0.1 2.44921e-17 0.04)
|
|
||||||
(-0.08 -9.79685e-18 0.095)
|
|
||||||
(-0.08 -9.79685e-18 0.09)
|
|
||||||
(-1.46953e-17 0.08 0.025)
|
|
||||||
(-1.46953e-17 0.08 0.02)
|
|
||||||
(0.1 2.44921e-17 0.115)
|
|
||||||
(0.1 2.44921e-17 0.11)
|
|
||||||
(-0.08 -9.79685e-18 0.165)
|
|
||||||
(-0.08 -9.79685e-18 0.16)
|
|
||||||
(6.12303e-18 -0.1 0.04)
|
|
||||||
(6.12303e-18 -0.1 0.045)
|
|
||||||
(-1.46953e-17 0.08 0.095)
|
|
||||||
(-1.46953e-17 0.08 0.09)
|
|
||||||
(0.1 2.44921e-17 0.185)
|
|
||||||
(0.1 2.44921e-17 0.18)
|
|
||||||
(6.12303e-18 -0.1 0.11)
|
|
||||||
(6.12303e-18 -0.1 0.115)
|
|
||||||
(-0.1 -1.22461e-17 0.04)
|
|
||||||
(-0.1 -1.22461e-17 0.045)
|
|
||||||
(-1.46953e-17 0.08 0.165)
|
|
||||||
(-1.46953e-17 0.08 0.16)
|
|
||||||
(6.12303e-18 -0.1 0.18)
|
|
||||||
(6.12303e-18 -0.1 0.185)
|
|
||||||
(-0.1 -1.22461e-17 0.11)
|
|
||||||
(-0.1 -1.22461e-17 0.115)
|
|
||||||
(-1.83691e-17 0.1 0.04)
|
|
||||||
(-1.83691e-17 0.1 0.045)
|
|
||||||
(-0.1 -1.22461e-17 0.18)
|
|
||||||
(-0.1 -1.22461e-17 0.185)
|
|
||||||
(-1.83691e-17 0.1 0.11)
|
|
||||||
(-1.83691e-17 0.1 0.115)
|
|
||||||
(0.08 1.95937e-17 0.045)
|
|
||||||
(0.08 1.95937e-17 0.05)
|
|
||||||
(-1.83691e-17 0.1 0.18)
|
|
||||||
(-1.83691e-17 0.1 0.185)
|
|
||||||
(0.08 1.95937e-17 0.115)
|
|
||||||
(0.08 1.95937e-17 0.12)
|
|
||||||
(4.89843e-18 -0.08 0.05)
|
|
||||||
(4.89843e-18 -0.08 0.045)
|
|
||||||
(0.08 1.95937e-17 0.185)
|
|
||||||
(0.08 1.95937e-17 0.19)
|
|
||||||
(4.89843e-18 -0.08 0.12)
|
|
||||||
(4.89843e-18 -0.08 0.115)
|
|
||||||
(-0.08 -9.79685e-18 0.05)
|
|
||||||
(-0.08 -9.79685e-18 0.045)
|
|
||||||
(4.89843e-18 -0.08 0.19)
|
|
||||||
(4.89843e-18 -0.08 0.185)
|
|
||||||
(0.1 2.44921e-17 0.07)
|
|
||||||
(0.1 2.44921e-17 0.065)
|
|
||||||
(-0.08 -9.79685e-18 0.12)
|
|
||||||
(-0.08 -9.79685e-18 0.115)
|
|
||||||
(-1.46953e-17 0.08 0.05)
|
|
||||||
(-1.46953e-17 0.08 0.045)
|
|
||||||
(0.1 2.44921e-17 0.14)
|
|
||||||
(0.1 2.44921e-17 0.135)
|
|
||||||
(-0.08 -9.79685e-18 0.19)
|
|
||||||
(-0.08 -9.79685e-18 0.185)
|
|
||||||
(6.12303e-18 -0.1 0.065)
|
|
||||||
(6.12303e-18 -0.1 0.07)
|
|
||||||
(-1.46953e-17 0.08 0.12)
|
|
||||||
(-1.46953e-17 0.08 0.115)
|
|
||||||
(6.12303e-18 -0.1 0.135)
|
|
||||||
(6.12303e-18 -0.1 0.14)
|
|
||||||
(-0.1 -1.22461e-17 0.065)
|
|
||||||
(-0.1 -1.22461e-17 0.07)
|
|
||||||
(-1.46953e-17 0.08 0.19)
|
|
||||||
(-1.46953e-17 0.08 0.185)
|
|
||||||
(-0.1 -1.22461e-17 0.135)
|
|
||||||
(-0.1 -1.22461e-17 0.14)
|
|
||||||
(-1.83691e-17 0.1 0.065)
|
|
||||||
(-1.83691e-17 0.1 0.07)
|
|
||||||
(0.08 1.95937e-17 0.005)
|
|
||||||
(0.085 2.08183e-17 0)
|
|
||||||
(-1.83691e-17 0.1 0.14)
|
|
||||||
(0.08 1.95937e-17 0.075)
|
|
||||||
(5.20458e-18 -0.085 0)
|
|
||||||
(4.89843e-18 -0.08 0.005)
|
|
||||||
(0.08 1.95937e-17 0.145)
|
|
||||||
(4.89843e-18 -0.08 0.075)
|
|
||||||
(-0.085 -1.04092e-17 0)
|
|
||||||
(-0.08 -9.79685e-18 0.005)
|
|
||||||
(4.89843e-18 -0.08 0.145)
|
|
||||||
(0.1 2.44921e-17 0.025)
|
|
||||||
(-0.08 -9.79685e-18 0.075)
|
|
||||||
(-1.56137e-17 0.085 0)
|
|
||||||
(-1.46953e-17 0.08 0.005)
|
|
||||||
(0.1 2.44921e-17 0.095)
|
|
||||||
(-0.08 -9.79685e-18 0.145)
|
|
||||||
(6.12303e-18 -0.1 0.025)
|
|
||||||
(-1.46953e-17 0.08 0.075)
|
|
||||||
(0.1 2.44921e-17 0.165)
|
|
||||||
(6.12303e-18 -0.1 0.095)
|
|
||||||
(-0.1 -1.22461e-17 0.025)
|
|
||||||
(-1.46953e-17 0.08 0.145)
|
|
||||||
(0.09 2.20429e-17 0)
|
|
||||||
(6.12303e-18 -0.1 0.165)
|
|
||||||
(-0.1 -1.22461e-17 0.095)
|
|
||||||
(-1.83691e-17 0.1 0.025)
|
|
||||||
(-0.1 -1.22461e-17 0.165)
|
|
||||||
(-1.83691e-17 0.1 0.095)
|
|
||||||
(5.51073e-18 -0.09 0)
|
|
||||||
(0.08 1.95937e-17 0.03)
|
|
||||||
(-1.83691e-17 0.1 0.165)
|
|
||||||
(0.08 1.95937e-17 0.1)
|
|
||||||
(-0.09 -1.10215e-17 0)
|
|
||||||
(4.89843e-18 -0.08 0.03)
|
|
||||||
(0.08 1.95937e-17 0.17)
|
|
||||||
(4.89843e-18 -0.08 0.1)
|
|
||||||
(-1.65322e-17 0.09 0)
|
|
||||||
(-0.08 -9.79685e-18 0.03)
|
|
||||||
(4.89843e-18 -0.08 0.17)
|
|
||||||
(0.1 2.44921e-17 0.05)
|
|
||||||
(-0.08 -9.79685e-18 0.1)
|
|
||||||
(-1.46953e-17 0.08 0.03)
|
|
||||||
(0.095 2.32675e-17 0)
|
|
||||||
(0.1 2.44921e-17 0.12)
|
|
||||||
(-0.08 -9.79685e-18 0.17)
|
|
||||||
(6.12303e-18 -0.1 0.05)
|
|
||||||
(-1.46953e-17 0.08 0.1)
|
|
||||||
(0.1 2.44921e-17 0.19)
|
|
||||||
(6.12303e-18 -0.1 0.12)
|
|
||||||
(-0.1 -1.22461e-17 0.05)
|
|
||||||
(5.81688e-18 -0.095 0)
|
|
||||||
(-1.46953e-17 0.08 0.17)
|
|
||||||
(6.12303e-18 -0.1 0.19)
|
|
||||||
(-0.1 -1.22461e-17 0.12)
|
|
||||||
(-1.83691e-17 0.1 0.05)
|
|
||||||
(-0.1 -1.22461e-17 0.19)
|
|
||||||
(-0.095 -1.16338e-17 0)
|
|
||||||
(-1.83691e-17 0.1 0.12)
|
|
||||||
(0.08 1.95937e-17 0.055)
|
|
||||||
(-1.83691e-17 0.1 0.19)
|
|
||||||
(0.08 1.95937e-17 0.125)
|
|
||||||
(-1.74506e-17 0.095 0)
|
|
||||||
(4.89843e-18 -0.08 0.055)
|
|
||||||
(0.08 1.95937e-17 0.195)
|
|
||||||
(4.89843e-18 -0.08 0.125)
|
|
||||||
(0.1 2.44921e-17 0.005)
|
|
||||||
(-0.08 -9.79685e-18 0.055)
|
|
||||||
(4.89843e-18 -0.08 0.195)
|
|
||||||
(0.1 2.44921e-17 0.075)
|
|
||||||
(-0.08 -9.79685e-18 0.125)
|
|
||||||
(6.12303e-18 -0.1 0.005)
|
|
||||||
(-1.46953e-17 0.08 0.055)
|
|
||||||
(0.1 2.44921e-17 0.145)
|
|
||||||
(-0.08 -9.79685e-18 0.195)
|
|
||||||
(6.12303e-18 -0.1 0.075)
|
|
||||||
(-0.1 -1.22461e-17 0.005)
|
|
||||||
(-1.46953e-17 0.08 0.125)
|
|
||||||
(6.12303e-18 -0.1 0.145)
|
|
||||||
(-0.1 -1.22461e-17 0.075)
|
|
||||||
(-1.83691e-17 0.1 0.005)
|
|
||||||
(-1.46953e-17 0.08 0.195)
|
|
||||||
(-0.1 -1.22461e-17 0.145)
|
|
||||||
(-1.83691e-17 0.1 0.075)
|
|
||||||
(0.08 1.95937e-17 0.01)
|
|
||||||
(-1.83691e-17 0.1 0.145)
|
|
||||||
(0.08 1.95937e-17 0.08)
|
|
||||||
(4.89843e-18 -0.08 0.01)
|
|
||||||
(0.08 1.95937e-17 0.15)
|
|
||||||
(4.89843e-18 -0.08 0.08)
|
|
||||||
(-0.08 -9.79685e-18 0.01)
|
|
||||||
(4.89843e-18 -0.08 0.15)
|
|
||||||
(0.1 2.44921e-17 0.03)
|
|
||||||
(-0.08 -9.79685e-18 0.08)
|
|
||||||
(-1.46953e-17 0.08 0.01)
|
|
||||||
(0.1 2.44921e-17 0.1)
|
|
||||||
(-0.08 -9.79685e-18 0.15)
|
|
||||||
(6.12303e-18 -0.1 0.03)
|
|
||||||
(-1.46953e-17 0.08 0.08)
|
|
||||||
(0.1 2.44921e-17 0.17)
|
|
||||||
(6.12303e-18 -0.1 0.1)
|
|
||||||
(-0.1 -1.22461e-17 0.03)
|
|
||||||
(-1.46953e-17 0.08 0.15)
|
|
||||||
(6.12303e-18 -0.1 0.17)
|
|
||||||
(-0.1 -1.22461e-17 0.1)
|
|
||||||
(-1.83691e-17 0.1 0.03)
|
|
||||||
(-0.1 -1.22461e-17 0.17)
|
|
||||||
(-1.83691e-17 0.1 0.1)
|
|
||||||
(0.08 1.95937e-17 0.035)
|
|
||||||
(-1.83691e-17 0.1 0.17)
|
|
||||||
(0.08 1.95937e-17 0.105)
|
|
||||||
(4.89843e-18 -0.08 0.035)
|
|
||||||
(0.08 1.95937e-17 0.175)
|
|
||||||
(4.89843e-18 -0.08 0.105)
|
|
||||||
(-0.08 -9.79685e-18 0.035)
|
|
||||||
(4.89843e-18 -0.08 0.175)
|
|
||||||
(0.1 2.44921e-17 0.055)
|
|
||||||
(-0.08 -9.79685e-18 0.105)
|
|
||||||
(-1.46953e-17 0.08 0.035)
|
|
||||||
(0.1 2.44921e-17 0.125)
|
|
||||||
(-0.08 -9.79685e-18 0.175)
|
|
||||||
(6.12303e-18 -0.1 0.055)
|
|
||||||
(-1.46953e-17 0.08 0.105)
|
|
||||||
(0.1 2.44921e-17 0.195)
|
|
||||||
(6.12303e-18 -0.1 0.125)
|
|
||||||
(-0.1 -1.22461e-17 0.055)
|
|
||||||
(-1.46953e-17 0.08 0.175)
|
|
||||||
(6.12303e-18 -0.1 0.195)
|
|
||||||
(-0.1 -1.22461e-17 0.125)
|
|
||||||
(-1.83691e-17 0.1 0.055)
|
|
||||||
(-0.1 -1.22461e-17 0.195)
|
|
||||||
(-1.83691e-17 0.1 0.125)
|
|
||||||
(0.08 1.95937e-17 0.06)
|
|
||||||
(-1.83691e-17 0.1 0.195)
|
|
||||||
(0.08 1.95937e-17 0.13)
|
|
||||||
(4.89843e-18 -0.08 0.06)
|
|
||||||
(0.085 2.08183e-17 0.2)
|
|
||||||
(4.89843e-18 -0.08 0.13)
|
|
||||||
(5.20458e-18 -0.085 0.2)
|
|
||||||
(0.1 2.44921e-17 0.01)
|
|
||||||
(-0.08 -9.79685e-18 0.06)
|
|
||||||
(-0.085 -1.04092e-17 0.2)
|
|
||||||
(0.1 2.44921e-17 0.08)
|
|
||||||
(-0.08 -9.79685e-18 0.13)
|
|
||||||
(6.12303e-18 -0.1 0.01)
|
|
||||||
(-1.46953e-17 0.08 0.06)
|
|
||||||
(0.1 2.44921e-17 0.15)
|
|
||||||
(6.12303e-18 -0.1 0.08)
|
|
||||||
(-1.56137e-17 0.085 0.2)
|
|
||||||
(-0.1 -1.22461e-17 0.01)
|
|
||||||
(-1.46953e-17 0.08 0.13)
|
|
||||||
(6.12303e-18 -0.1 0.15)
|
|
||||||
(-0.1 -1.22461e-17 0.08)
|
|
||||||
(0.09 2.20429e-17 0.2)
|
|
||||||
(-1.83691e-17 0.1 0.01)
|
|
||||||
(-0.1 -1.22461e-17 0.15)
|
|
||||||
(5.51073e-18 -0.09 0.2)
|
|
||||||
(-1.83691e-17 0.1 0.08)
|
|
||||||
(0.08 1.95937e-17 0.015)
|
|
||||||
(-1.83691e-17 0.1 0.15)
|
|
||||||
(-0.09 -1.10215e-17 0.2)
|
|
||||||
(0.08 1.95937e-17 0.085)
|
|
||||||
(4.89843e-18 -0.08 0.015)
|
|
||||||
(0.08 1.95937e-17 0.155)
|
|
||||||
(-1.65322e-17 0.09 0.2)
|
|
||||||
(4.89843e-18 -0.08 0.085)
|
|
||||||
(0.095 2.32675e-17 0.2)
|
|
||||||
(-0.08 -9.79685e-18 0.015)
|
|
||||||
(4.89843e-18 -0.08 0.155)
|
|
||||||
(0.1 2.44921e-17 0.035)
|
|
||||||
(-0.08 -9.79685e-18 0.085)
|
|
||||||
(5.81688e-18 -0.095 0.2)
|
|
||||||
(-1.46953e-17 0.08 0.015)
|
|
||||||
(0.1 2.44921e-17 0.105)
|
|
||||||
(-0.08 -9.79685e-18 0.155)
|
|
||||||
(6.12303e-18 -0.1 0.035)
|
|
||||||
(-0.095 -1.16338e-17 0.2)
|
|
||||||
(-1.46953e-17 0.08 0.085)
|
|
||||||
(0.1 2.44921e-17 0.175)
|
|
||||||
(6.12303e-18 -0.1 0.105)
|
|
||||||
(-0.1 -1.22461e-17 0.035)
|
|
||||||
(-1.74506e-17 0.095 0.2)
|
|
||||||
(-1.46953e-17 0.08 0.155)
|
|
||||||
(6.12303e-18 -0.1 0.175)
|
|
||||||
(-0.1 -1.22461e-17 0.105)
|
|
||||||
(-1.83691e-17 0.1 0.035)
|
|
||||||
(-0.1 -1.22461e-17 0.175)
|
|
||||||
(-1.83691e-17 0.1 0.105)
|
|
||||||
(0.08 1.95937e-17 0.04)
|
|
||||||
(-1.83691e-17 0.1 0.175)
|
|
||||||
(0.08 1.95937e-17 0.11)
|
|
||||||
(4.89843e-18 -0.08 0.04)
|
|
||||||
(0.08 1.95937e-17 0.18)
|
|
||||||
(4.89843e-18 -0.08 0.11)
|
|
||||||
(-0.08 -9.79685e-18 0.04)
|
|
||||||
(4.89843e-18 -0.08 0.18)
|
|
||||||
(0.1 2.44921e-17 0.06)
|
|
||||||
(-0.08 -9.79685e-18 0.11)
|
|
||||||
(-1.46953e-17 0.08 0.04)
|
|
||||||
(0.1 2.44921e-17 0.13)
|
|
||||||
(-0.08 -9.79685e-18 0.18)
|
|
||||||
(6.12303e-18 -0.1 0.06)
|
|
||||||
(-1.46953e-17 0.08 0.11)
|
|
||||||
(6.12303e-18 -0.1 0.13)
|
|
||||||
(-0.1 -1.22461e-17 0.06)
|
|
||||||
(-1.46953e-17 0.08 0.18)
|
|
||||||
(-0.1 -1.22461e-17 0.13)
|
|
||||||
(-1.83691e-17 0.1 0.06)
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
// edges:
|
|
||||||
|
|
||||||
352
|
|
||||||
(
|
|
||||||
(16 17)
|
|
||||||
(18 19)
|
|
||||||
(20 21)
|
|
||||||
(22 23)
|
|
||||||
(24 25)
|
|
||||||
(26 27)
|
|
||||||
(28 29)
|
|
||||||
(30 31)
|
|
||||||
(32 33)
|
|
||||||
(34 35)
|
|
||||||
(36 37)
|
|
||||||
(38 39)
|
|
||||||
(40 41)
|
|
||||||
(42 43)
|
|
||||||
(44 45)
|
|
||||||
(46 47)
|
|
||||||
(48 49)
|
|
||||||
(50 51)
|
|
||||||
(52 53)
|
|
||||||
(54 55)
|
|
||||||
(56 57)
|
|
||||||
(58 59)
|
|
||||||
(60 61)
|
|
||||||
(62 63)
|
|
||||||
(64 65)
|
|
||||||
(66 67)
|
|
||||||
(68 69)
|
|
||||||
(70 71)
|
|
||||||
(72 73)
|
|
||||||
(74 75)
|
|
||||||
(76 77)
|
|
||||||
(78 79)
|
|
||||||
(80 81)
|
|
||||||
(82 83)
|
|
||||||
(84 85)
|
|
||||||
(86 87)
|
|
||||||
(88 89)
|
|
||||||
(90 91)
|
|
||||||
(92 93)
|
|
||||||
(94 95)
|
|
||||||
(96 97)
|
|
||||||
(98 99)
|
|
||||||
(100 101)
|
|
||||||
(102 103)
|
|
||||||
(104 105)
|
|
||||||
(106 107)
|
|
||||||
(108 109)
|
|
||||||
(110 111)
|
|
||||||
(112 113)
|
|
||||||
(114 115)
|
|
||||||
(116 117)
|
|
||||||
(118 119)
|
|
||||||
(120 121)
|
|
||||||
(122 123)
|
|
||||||
(124 125)
|
|
||||||
(126 127)
|
|
||||||
(128 129)
|
|
||||||
(130 131)
|
|
||||||
(132 133)
|
|
||||||
(134 135)
|
|
||||||
(136 137)
|
|
||||||
(138 139)
|
|
||||||
(140 141)
|
|
||||||
(142 143)
|
|
||||||
(0 144)
|
|
||||||
(145 0)
|
|
||||||
(17 146)
|
|
||||||
(19 147)
|
|
||||||
(1 148)
|
|
||||||
(149 1)
|
|
||||||
(21 150)
|
|
||||||
(151 22)
|
|
||||||
(2 152)
|
|
||||||
(153 2)
|
|
||||||
(154 24)
|
|
||||||
(155 26)
|
|
||||||
(156 28)
|
|
||||||
(3 157)
|
|
||||||
(158 3)
|
|
||||||
(159 30)
|
|
||||||
(160 32)
|
|
||||||
(35 161)
|
|
||||||
(162 36)
|
|
||||||
(163 38)
|
|
||||||
(41 164)
|
|
||||||
(43 165)
|
|
||||||
(166 44)
|
|
||||||
(167 145)
|
|
||||||
(47 168)
|
|
||||||
(49 169)
|
|
||||||
(51 170)
|
|
||||||
(53 171)
|
|
||||||
(55 172)
|
|
||||||
(148 173)
|
|
||||||
(57 174)
|
|
||||||
(59 175)
|
|
||||||
(61 176)
|
|
||||||
(152 177)
|
|
||||||
(178 62)
|
|
||||||
(65 179)
|
|
||||||
(180 66)
|
|
||||||
(157 181)
|
|
||||||
(182 68)
|
|
||||||
(183 70)
|
|
||||||
(184 72)
|
|
||||||
(185 74)
|
|
||||||
(186 76)
|
|
||||||
(187 167)
|
|
||||||
(188 78)
|
|
||||||
(189 80)
|
|
||||||
(83 190)
|
|
||||||
(191 84)
|
|
||||||
(192 86)
|
|
||||||
(89 193)
|
|
||||||
(91 194)
|
|
||||||
(173 195)
|
|
||||||
(196 92)
|
|
||||||
(95 197)
|
|
||||||
(97 198)
|
|
||||||
(99 199)
|
|
||||||
(101 200)
|
|
||||||
(177 201)
|
|
||||||
(103 202)
|
|
||||||
(105 203)
|
|
||||||
(107 204)
|
|
||||||
(109 205)
|
|
||||||
(181 206)
|
|
||||||
(207 110)
|
|
||||||
(113 208)
|
|
||||||
(209 114)
|
|
||||||
(4 187)
|
|
||||||
(210 4)
|
|
||||||
(211 116)
|
|
||||||
(212 118)
|
|
||||||
(213 120)
|
|
||||||
(214 122)
|
|
||||||
(195 5)
|
|
||||||
(5 215)
|
|
||||||
(216 124)
|
|
||||||
(217 126)
|
|
||||||
(218 128)
|
|
||||||
(131 219)
|
|
||||||
(201 6)
|
|
||||||
(6 220)
|
|
||||||
(221 132)
|
|
||||||
(135 222)
|
|
||||||
(137 223)
|
|
||||||
(206 7)
|
|
||||||
(7 224)
|
|
||||||
(225 138)
|
|
||||||
(141 226)
|
|
||||||
(143 227)
|
|
||||||
(144 228)
|
|
||||||
(146 229)
|
|
||||||
(147 230)
|
|
||||||
(231 149)
|
|
||||||
(150 232)
|
|
||||||
(233 151)
|
|
||||||
(234 153)
|
|
||||||
(235 154)
|
|
||||||
(236 155)
|
|
||||||
(237 156)
|
|
||||||
(238 158)
|
|
||||||
(239 159)
|
|
||||||
(240 160)
|
|
||||||
(161 241)
|
|
||||||
(242 162)
|
|
||||||
(243 163)
|
|
||||||
(164 244)
|
|
||||||
(165 245)
|
|
||||||
(246 166)
|
|
||||||
(168 247)
|
|
||||||
(169 248)
|
|
||||||
(170 249)
|
|
||||||
(171 250)
|
|
||||||
(172 251)
|
|
||||||
(174 252)
|
|
||||||
(175 253)
|
|
||||||
(176 254)
|
|
||||||
(255 178)
|
|
||||||
(179 256)
|
|
||||||
(257 180)
|
|
||||||
(258 182)
|
|
||||||
(259 183)
|
|
||||||
(260 184)
|
|
||||||
(261 185)
|
|
||||||
(262 186)
|
|
||||||
(263 188)
|
|
||||||
(264 189)
|
|
||||||
(190 265)
|
|
||||||
(266 191)
|
|
||||||
(267 192)
|
|
||||||
(193 268)
|
|
||||||
(194 269)
|
|
||||||
(270 196)
|
|
||||||
(197 271)
|
|
||||||
(198 272)
|
|
||||||
(199 273)
|
|
||||||
(200 274)
|
|
||||||
(202 275)
|
|
||||||
(203 276)
|
|
||||||
(204 277)
|
|
||||||
(205 278)
|
|
||||||
(279 207)
|
|
||||||
(208 8)
|
|
||||||
(8 280)
|
|
||||||
(281 209)
|
|
||||||
(9 212)
|
|
||||||
(282 9)
|
|
||||||
(283 210)
|
|
||||||
(284 211)
|
|
||||||
(10 218)
|
|
||||||
(285 10)
|
|
||||||
(286 213)
|
|
||||||
(287 214)
|
|
||||||
(215 288)
|
|
||||||
(289 216)
|
|
||||||
(290 217)
|
|
||||||
(219 291)
|
|
||||||
(11 225)
|
|
||||||
(292 11)
|
|
||||||
(220 293)
|
|
||||||
(294 221)
|
|
||||||
(222 295)
|
|
||||||
(223 296)
|
|
||||||
(280 297)
|
|
||||||
(224 298)
|
|
||||||
(226 299)
|
|
||||||
(300 282)
|
|
||||||
(227 301)
|
|
||||||
(228 302)
|
|
||||||
(229 303)
|
|
||||||
(304 285)
|
|
||||||
(230 305)
|
|
||||||
(306 231)
|
|
||||||
(232 307)
|
|
||||||
(308 292)
|
|
||||||
(309 233)
|
|
||||||
(297 310)
|
|
||||||
(311 234)
|
|
||||||
(312 235)
|
|
||||||
(313 236)
|
|
||||||
(314 237)
|
|
||||||
(315 300)
|
|
||||||
(316 238)
|
|
||||||
(317 239)
|
|
||||||
(318 240)
|
|
||||||
(241 319)
|
|
||||||
(320 304)
|
|
||||||
(321 242)
|
|
||||||
(322 243)
|
|
||||||
(244 323)
|
|
||||||
(245 324)
|
|
||||||
(325 308)
|
|
||||||
(326 246)
|
|
||||||
(247 327)
|
|
||||||
(248 328)
|
|
||||||
(249 329)
|
|
||||||
(12 267)
|
|
||||||
(310 12)
|
|
||||||
(250 330)
|
|
||||||
(13 315)
|
|
||||||
(271 13)
|
|
||||||
(251 331)
|
|
||||||
(252 332)
|
|
||||||
(14 320)
|
|
||||||
(274 14)
|
|
||||||
(253 333)
|
|
||||||
(15 325)
|
|
||||||
(277 15)
|
|
||||||
(254 334)
|
|
||||||
(335 255)
|
|
||||||
(256 336)
|
|
||||||
(337 257)
|
|
||||||
(338 258)
|
|
||||||
(339 259)
|
|
||||||
(340 260)
|
|
||||||
(341 261)
|
|
||||||
(342 262)
|
|
||||||
(343 263)
|
|
||||||
(344 264)
|
|
||||||
(265 345)
|
|
||||||
(346 266)
|
|
||||||
(268 347)
|
|
||||||
(269 348)
|
|
||||||
(349 270)
|
|
||||||
(272 350)
|
|
||||||
(273 351)
|
|
||||||
(275 16)
|
|
||||||
(276 18)
|
|
||||||
(278 20)
|
|
||||||
(23 279)
|
|
||||||
(25 281)
|
|
||||||
(27 283)
|
|
||||||
(29 284)
|
|
||||||
(31 286)
|
|
||||||
(33 287)
|
|
||||||
(288 34)
|
|
||||||
(37 289)
|
|
||||||
(39 290)
|
|
||||||
(291 40)
|
|
||||||
(293 42)
|
|
||||||
(45 294)
|
|
||||||
(295 46)
|
|
||||||
(296 48)
|
|
||||||
(298 50)
|
|
||||||
(299 52)
|
|
||||||
(301 54)
|
|
||||||
(302 56)
|
|
||||||
(303 58)
|
|
||||||
(305 60)
|
|
||||||
(63 306)
|
|
||||||
(307 64)
|
|
||||||
(67 309)
|
|
||||||
(69 311)
|
|
||||||
(71 312)
|
|
||||||
(73 313)
|
|
||||||
(75 314)
|
|
||||||
(77 316)
|
|
||||||
(79 317)
|
|
||||||
(81 318)
|
|
||||||
(319 82)
|
|
||||||
(85 321)
|
|
||||||
(87 322)
|
|
||||||
(323 88)
|
|
||||||
(324 90)
|
|
||||||
(93 326)
|
|
||||||
(327 94)
|
|
||||||
(328 96)
|
|
||||||
(329 98)
|
|
||||||
(330 100)
|
|
||||||
(331 102)
|
|
||||||
(332 104)
|
|
||||||
(333 106)
|
|
||||||
(334 108)
|
|
||||||
(111 335)
|
|
||||||
(336 112)
|
|
||||||
(115 337)
|
|
||||||
(117 338)
|
|
||||||
(119 339)
|
|
||||||
(121 340)
|
|
||||||
(123 341)
|
|
||||||
(125 342)
|
|
||||||
(127 343)
|
|
||||||
(129 344)
|
|
||||||
(345 130)
|
|
||||||
(133 346)
|
|
||||||
(347 134)
|
|
||||||
(348 136)
|
|
||||||
(139 349)
|
|
||||||
(350 140)
|
|
||||||
(351 142)
|
|
||||||
)
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user