Merge branch 'master' of ssh://dm/home/dm4/OpenFOAM/OpenFOAM-dev

This commit is contained in:
Henry
2013-06-20 10:45:19 +01:00
169 changed files with 2674 additions and 1659 deletions

View File

@ -26,12 +26,12 @@ else
fi
# build OpenFOAM libraries and applications
src/Allwmake
applications/Allwmake
src/Allwmake $*
applications/Allwmake $*
if [ "$1" = doc ]
then
doc/Allwmake
doc/Allwmake $*
fi
# ----------------------------------------------------------------- end-of-file

View File

@ -16,7 +16,7 @@ wmakeCheckPwd "$WM_PROJECT_DIR/applications" || {
set -x
wmake all utilities
wmake all solvers
wmake all utilities $*
wmake all solvers $*
# ----------------------------------------------------------------- end-of-file

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -22,8 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::XiGModel::basicSubGrid
Foam::XiGModels::basicSubGrid
Description
@ -39,13 +38,14 @@ Description
and the removal:
\f[ - k_{1} /frac{\vert \dwea{\vec{U}} \vert}{L_{sub}}
\frac{\Xi_{sub}-1}{\Xi_{sub}} \f]
\f[
- k_{1} /frac{\vert \dwea{\vec{U}} \vert}{L_{sub}}
\frac{\Xi_{sub}-1}{\Xi_{sub}}
\f]
Finally, \f$ G_{sub} \f$ is added to generation rate \f$ G_{in} \f$
due to the turbulence.
SourceFiles
basicSubGrid.C

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::XiEqModel::SCOPEXiEq
Foam::XiEqModels::SCOPEXiEq
Description
Simple SCOPEXiEq model for XiEq based on SCOPEXiEqs correlation
@ -120,7 +120,6 @@ public:
//- Update properties from given dictionary
virtual bool read(const dictionary& XiEqProperties);
};

View File

@ -26,6 +26,10 @@ License
#include "DelaunayMesh.H"
#include "labelPair.H"
#include "PrintTable.H"
#include "pointIOField.H"
#include "scalarIOField.H"
#include "labelIOField.H"
#include "pointConversion.H"
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
@ -36,14 +40,121 @@ License
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
template<class Triangulation>
Foam::DelaunayMesh<Triangulation>::DelaunayMesh()
Foam::DelaunayMesh<Triangulation>::DelaunayMesh(const Time& runTime)
:
Triangulation(),
vertexCount_(0),
cellCount_(0)
cellCount_(0),
runTime_(runTime)
{}
template<class Triangulation>
Foam::DelaunayMesh<Triangulation>::DelaunayMesh
(
const Time& runTime,
const word& meshName
)
:
Triangulation(),
vertexCount_(0),
cellCount_(0),
runTime_(runTime)
{
pointIOField pts
(
IOobject
(
"points",
runTime.timeName(),
meshName/polyMesh::meshSubDir,
runTime,
IOobject::READ_IF_PRESENT,
IOobject::NO_WRITE
)
);
labelIOField types
(
IOobject
(
"types",
runTime.timeName(),
meshName,
runTime,
IOobject::READ_IF_PRESENT,
IOobject::NO_WRITE
)
);
labelIOField indices
(
IOobject
(
"indices",
runTime.timeName(),
meshName,
runTime,
IOobject::READ_IF_PRESENT,
IOobject::NO_WRITE
)
);
labelIOField processorIndices
(
IOobject
(
"processorIndices",
runTime.timeName(),
meshName,
runTime,
IOobject::READ_IF_PRESENT,
IOobject::NO_WRITE
)
);
if (pts.headerOk())
{
forAll(pts, ptI)
{
Vertex_handle vh = this->insert(toPoint<Point>(pts[ptI]));
if (indices.headerOk())
{
vh->index() = indices[ptI];
vertexCount()++;
}
else
{
vh->index() = getNewVertexIndex();
}
if (processorIndices.headerOk())
{
vh->procIndex() = processorIndices[ptI];
}
else
{
vh->procIndex() = Pstream::myProcNo();
}
if (types.headerOk())
{
vh->type() =
static_cast<Foam::indexedVertexEnum::vertexType>
(
types[ptI]
);
}
else
{
vh->type() = Vb::vtUnassigned;
}
}
}
}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
template<class Triangulation>

View File

@ -43,6 +43,7 @@ SourceFiles
#include "boundBox.H"
#include "indexedVertex.H"
#include "CGALTriangulation3Ddefs.H"
#include "Time.H"
#include "autoPtr.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -82,6 +83,12 @@ public:
FixedList<label, 2>::Hash<>
> labelPairHashSet;
typedef HashTable
<
label,
labelPair,
FixedList<label, 2>::Hash<>
> labelTolabelPairHashTable;
private:
@ -95,6 +102,9 @@ private:
// This allows a unique index to be assigned to each cell.
mutable label cellCount_;
//- Reference to Time
const Time& runTime_;
//- Spatial sort traits to use with a pair of point pointers and an int.
// Taken from a post on the CGAL lists: 2010-01/msg00004.html by
// Sebastien Loriot (Geometry Factory).
@ -159,7 +169,13 @@ public:
// Constructors
//- Construct from components
DelaunayMesh();
explicit DelaunayMesh(const Time& runTime);
DelaunayMesh
(
const Time& runTime,
const word& meshName
);
//- Destructor
@ -168,6 +184,14 @@ public:
// Member Functions
inline const Time& time() const;
inline void timeCheck
(
const string& description,
const bool check = true
) const;
inline label getNewVertexIndex() const;
inline label getNewCellIndex() const;
@ -177,6 +201,7 @@ public:
inline void resetCellCount();
inline label vertexCount() const;
inline label& vertexCount();
inline void resetVertexCount();
@ -209,12 +234,12 @@ public:
//- Create an fvMesh from the triangulation.
// The mesh is not parallel consistent - only used for viewing
autoPtr<fvMesh> createMesh
autoPtr<polyMesh> createMesh
(
const fileName& name,
const Time& runTime,
labelList& vertexMap,
labelList& cellMap
labelTolabelPairHashTable& vertexMap,
labelList& cellMap,
const bool writeDelaunayData = true
) const;
};

View File

@ -36,6 +36,40 @@ License
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class Triangulation>
inline const Foam::Time& Foam::DelaunayMesh<Triangulation>::time() const
{
return runTime_;
}
template<class Triangulation>
void Foam::DelaunayMesh<Triangulation>::timeCheck
(
const string& description,
const bool check
) const
{
if (check)
{
Info<< nl << "--- [ cpuTime "
<< time().elapsedCpuTime() << " s, "
<< "delta " << time().cpuTimeIncrement()<< " s";
if (description != word::null)
{
Info<< ", " << description << " ";
}
else
{
Info<< " ";
}
Info<< "] --- " << endl;
}
}
template<class Triangulation>
inline Foam::label Foam::DelaunayMesh<Triangulation>::getNewVertexIndex() const
{
@ -90,6 +124,12 @@ Foam::label Foam::DelaunayMesh<Triangulation>::vertexCount() const
return vertexCount_;
}
template<class Triangulation>
Foam::label& Foam::DelaunayMesh<Triangulation>::vertexCount()
{
return vertexCount_;
}
template<class Triangulation>
void Foam::DelaunayMesh<Triangulation>::resetVertexCount()

View File

@ -28,6 +28,7 @@ License
#include "pointConversion.H"
#include "wallPolyPatch.H"
#include "processorPolyPatch.H"
#include "labelIOField.H"
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
@ -331,13 +332,13 @@ void Foam::DelaunayMesh<Triangulation>::printVertexInfo(Ostream& os) const
template<class Triangulation>
Foam::autoPtr<Foam::fvMesh>
Foam::autoPtr<Foam::polyMesh>
Foam::DelaunayMesh<Triangulation>::createMesh
(
const fileName& name,
const Time& runTime,
labelList& vertexMap,
labelList& cellMap
labelTolabelPairHashTable& vertexMap,
labelList& cellMap,
const bool writeDelaunayData
) const
{
pointField points(Triangulation::number_of_vertices());
@ -354,12 +355,54 @@ Foam::DelaunayMesh<Triangulation>::createMesh
List<DynamicList<face> > patchFaces(1, DynamicList<face>());
List<DynamicList<label> > patchOwners(1, DynamicList<label>());
vertexMap.setSize(vertexCount(), -1);
vertexMap.resize(vertexCount());
cellMap.setSize(Triangulation::number_of_finite_cells(), -1);
// Calculate pts and a map of point index to location in pts.
label vertI = 0;
labelIOField indices
(
IOobject
(
"indices",
time().timeName(),
name,
time(),
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
Triangulation::number_of_vertices()
);
labelIOField types
(
IOobject
(
"types",
time().timeName(),
name,
time(),
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
Triangulation::number_of_vertices()
);
labelIOField processorIndices
(
IOobject
(
"processorIndices",
time().timeName(),
name,
time(),
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
Triangulation::number_of_vertices()
);
for
(
Finite_vertices_iterator vit = Triangulation::finite_vertices_begin();
@ -369,13 +412,20 @@ Foam::DelaunayMesh<Triangulation>::createMesh
{
if (!vit->farPoint())
{
vertexMap[vit->index()] = vertI;
vertexMap(labelPair(vit->index(), vit->procIndex())) = vertI;
points[vertI] = topoint(vit->point());
indices[vertI] = vit->index();
types[vertI] = static_cast<label>(vit->type());
processorIndices[vertI] = vit->procIndex();
vertI++;
}
}
points.setSize(vertI);
indices.setSize(vertI);
types.setSize(vertI);
processorIndices.setSize(vertI);
// Index the cells
label cellI = 0;
@ -391,6 +441,7 @@ Foam::DelaunayMesh<Triangulation>::createMesh
(
!cit->hasFarPoint()
&& !Triangulation::is_infinite(cit)
&& cit->real()
)
{
cellMap[cit->cellIndex()] = cellI++;
@ -424,7 +475,12 @@ Foam::DelaunayMesh<Triangulation>::createMesh
label c1I = Cb::ctFar;
bool c1Real = false;
if (!c1->hasFarPoint() && !Triangulation::is_infinite(c1))
if
(
!c1->hasFarPoint()
&& !Triangulation::is_infinite(c1)
&& c1->real()
)
{
c1I = cellMap[c1->cellIndex()];
c1Real = true;
@ -432,7 +488,12 @@ Foam::DelaunayMesh<Triangulation>::createMesh
label c2I = Cb::ctFar;
bool c2Real = false;
if (!c2->hasFarPoint() && !Triangulation::is_infinite(c2))
if
(
!c2->hasFarPoint()
&& !Triangulation::is_infinite(c2)
&& c2->real()
)
{
c2I = cellMap[c2->cellIndex()];
c2Real = true;
@ -451,10 +512,17 @@ Foam::DelaunayMesh<Triangulation>::createMesh
{
verticesOnTriFace[i] = vertexMap
[
labelPair
(
c1->vertex
(
Triangulation::vertex_triple_index(oppositeVertex, i)
)->index()
)->index(),
c1->vertex
(
Triangulation::vertex_triple_index(oppositeVertex, i)
)->procIndex()
)
];
}
@ -524,15 +592,15 @@ Foam::DelaunayMesh<Triangulation>::createMesh
Info<< "Creating mesh" << endl;
autoPtr<fvMesh> meshPtr
autoPtr<polyMesh> meshPtr
(
new fvMesh
new polyMesh
(
IOobject
(
name,
runTime.timeName(),
runTime,
time().timeName(),
time(),
IOobject::NO_READ,
IOobject::NO_WRITE
),
@ -565,7 +633,14 @@ Foam::DelaunayMesh<Triangulation>::createMesh
patches.setSize(nValidPatches);
meshPtr().addFvPatches(patches);
meshPtr().addPatches(patches);
if (writeDelaunayData)
{
indices.write();
types.write();
processorIndices.write();
}
Info<< "Mesh created" << endl;

View File

@ -126,9 +126,24 @@ Foam::DistributedDelaunayMesh<Triangulation>::buildMap
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
template<class Triangulation>
Foam::DistributedDelaunayMesh<Triangulation>::DistributedDelaunayMesh()
Foam::DistributedDelaunayMesh<Triangulation>::DistributedDelaunayMesh
(
const Time& runTime
)
:
DelaunayMesh<Triangulation>(),
DelaunayMesh<Triangulation>(runTime),
allBackgroundMeshBounds_()
{}
template<class Triangulation>
Foam::DistributedDelaunayMesh<Triangulation>::DistributedDelaunayMesh
(
const Time& runTime,
const word& meshName
)
:
DelaunayMesh<Triangulation>(runTime, meshName),
allBackgroundMeshBounds_()
{}
@ -254,22 +269,69 @@ void Foam::DistributedDelaunayMesh<Triangulation>::findProcessorBoundaryCells
/Pstream::nProcs()
);
std::list<Cell_handle> infinite_cells;
Triangulation::incident_cells
(
Triangulation::infinite_vertex(),
std::back_inserter(infinite_cells)
);
// std::list<Cell_handle> infinite_cells;
// Triangulation::incident_cells
// (
// Triangulation::infinite_vertex(),
// std::back_inserter(infinite_cells)
// );
//
// for
// (
// typename std::list<Cell_handle>::iterator vcit
// = infinite_cells.begin();
// vcit != infinite_cells.end();
// ++vcit
// )
// {
// Cell_handle cit = *vcit;
//
// // Index of infinite vertex in this cell.
// int i = cit->index(Triangulation::infinite_vertex());
//
// Cell_handle c = cit->neighbor(i);
//
// if (c->unassigned())
// {
// c->cellIndex() = this->getNewCellIndex();
//
// if (checkProcBoundaryCell(c, circumsphereOverlaps))
// {
// cellToCheck.insert(c->cellIndex());
// }
// }
// }
//
//
// for
// (
// Finite_cells_iterator cit = Triangulation::finite_cells_begin();
// cit != Triangulation::finite_cells_end();
// ++cit
// )
// {
// if (cit->parallelDualVertex())
// {
// if (cit->unassigned())
// {
// if (checkProcBoundaryCell(cit, circumsphereOverlaps))
// {
// cellToCheck.insert(cit->cellIndex());
// }
// }
// }
// }
for
(
typename std::list<Cell_handle>::iterator vcit = infinite_cells.begin();
vcit != infinite_cells.end();
++vcit
All_cells_iterator cit = Triangulation::all_cells_begin();
cit != Triangulation::all_cells_end();
++cit
)
{
Cell_handle cit = *vcit;
if (Triangulation::is_infinite(cit))
{
// Index of infinite vertex in this cell.
int i = cit->index(Triangulation::infinite_vertex());
@ -285,16 +347,7 @@ void Foam::DistributedDelaunayMesh<Triangulation>::findProcessorBoundaryCells
}
}
}
for
(
Finite_cells_iterator cit = Triangulation::finite_cells_begin();
cit != Triangulation::finite_cells_end();
++cit
)
{
if (cit->parallelDualVertex())
else if (cit->parallelDualVertex())
{
if (cit->unassigned())
{

View File

@ -135,13 +135,25 @@ public:
// Constructors
//- Construct from components
DistributedDelaunayMesh();
explicit DistributedDelaunayMesh(const Time& runTime);
DistributedDelaunayMesh
(
const Time& runTime,
const word& meshName
);
//- Destructor
~DistributedDelaunayMesh();
// Queries
//- Use DelaunayMesh timeCheck function
using DelaunayMesh<Triangulation>::timeCheck;
// Member Functions
//- Build a mapDistribute for the supplied destination processor data

View File

@ -791,10 +791,11 @@ Foam::backgroundMeshDecomposition::backgroundMeshDecomposition
(
IOobject
(
fvMesh::defaultRegion,
"backgroundMeshDecomposition",
runTime_.timeName(),
runTime_,
IOobject::MUST_READ
IOobject::MUST_READ,
IOobject::AUTO_WRITE
)
),
meshCutter_

View File

@ -27,7 +27,7 @@ License
#include "cellSizeAndAlignmentControls.H"
#include "pointIOField.H"
#include "scalarIOField.H"
#include "tensorIOField.H"
#include "triadIOField.H"
#include "tetrahedron.H"
#include "plane.H"
#include "transform.H"
@ -38,6 +38,8 @@ License
namespace Foam
{
defineTypeNameAndDebug(cellShapeControlMesh, 0);
word cellShapeControlMesh::meshSubDir = "cellShapeControlMesh";
}
@ -366,9 +368,89 @@ void Foam::cellShapeControlMesh::writeTriangulation()
Foam::cellShapeControlMesh::cellShapeControlMesh(const Time& runTime)
:
DistributedDelaunayMesh<CellSizeDelaunay>
(
runTime,
meshSubDir
),
runTime_(runTime),
defaultCellSize_(0.0)
{}
{
if (this->vertexCount())
{
fvMesh mesh
(
IOobject
(
meshSubDir,
runTime.timeName(),
runTime,
IOobject::READ_IF_PRESENT,
IOobject::NO_WRITE
)
);
if (mesh.nPoints() == this->vertexCount())
{
pointScalarField sizes
(
IOobject
(
"sizes",
runTime.timeName(),
meshSubDir,
runTime,
IOobject::READ_IF_PRESENT,
IOobject::NO_WRITE
),
pointMesh::New(mesh)
);
triadIOField alignments
(
IOobject
(
"alignments",
mesh.time().timeName(),
meshSubDir,
mesh.time(),
IOobject::READ_IF_PRESENT,
IOobject::AUTO_WRITE
)
);
if
(
sizes.size() == this->vertexCount()
&& alignments.size() == this->vertexCount()
)
{
label count = 0;
for
(
Finite_vertices_iterator vit = finite_vertices_begin();
vit != finite_vertices_end();
++vit
)
{
vit->targetCellSize() = sizes[count];
vit->alignment() = alignments[count];
count++;
}
}
else
{
FatalErrorIn
(
"Foam::cellShapeControlMesh::cellShapeControlMesh"
"(const Time&)"
) << "Cell size point field is not the same size as the "
<< "mesh."
<< abort(FatalError);
}
}
}
}
//Foam::triangulatedMesh::triangulatedMesh
@ -744,9 +826,7 @@ void Foam::cellShapeControlMesh::insertBoundingPoints
void Foam::cellShapeControlMesh::write() const
{
Info<< "Writing cell size and alignment mesh" << endl;
const fileName name("cellSizeAndAlignmentMesh");
Info<< "Writing " << meshSubDir << endl;
// Reindex the cells
label cellCount = 0;
@ -763,17 +843,16 @@ void Foam::cellShapeControlMesh::write() const
}
}
labelList vertexMap;
DelaunayMesh<CellSizeDelaunay>::labelTolabelPairHashTable vertexMap;
labelList cellMap;
autoPtr<fvMesh> meshPtr = DelaunayMesh<CellSizeDelaunay>::createMesh
autoPtr<polyMesh> meshPtr = DelaunayMesh<CellSizeDelaunay>::createMesh
(
name,
runTime_,
meshSubDir,
vertexMap,
cellMap
);
const fvMesh& mesh = meshPtr();
const polyMesh& mesh = meshPtr();
pointScalarField sizes
(
@ -781,7 +860,8 @@ void Foam::cellShapeControlMesh::write() const
(
"sizes",
mesh.time().timeName(),
mesh,
meshSubDir,
mesh.time(),
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
@ -789,7 +869,22 @@ void Foam::cellShapeControlMesh::write() const
scalar(0)
);
OFstream str(runTime_.path()/"alignments.obj");
triadIOField alignments
(
IOobject
(
"alignments",
mesh.time().timeName(),
meshSubDir,
mesh.time(),
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
sizes.size()
);
// Write alignments
// OFstream str(runTime_.path()/"alignments.obj");
for
(
@ -801,35 +896,41 @@ void Foam::cellShapeControlMesh::write() const
if (!vit->farPoint())
{
// Populate sizes
sizes[vertexMap[vit->index()]] = vit->targetCellSize();
sizes[vertexMap[labelPair(vit->index(), vit->procIndex())]] =
vit->targetCellSize();
// Write alignments
const tensor& alignment = vit->alignment();
pointFromPoint pt = topoint(vit->point());
alignments[vertexMap[labelPair(vit->index(), vit->procIndex())]] =
vit->alignment();
if
(
alignment.x() == triad::unset[0]
|| alignment.y() == triad::unset[0]
|| alignment.z() == triad::unset[0]
)
{
Info<< "Bad alignment = " << vit->info();
vit->alignment() = tensor::I;
Info<< "New alignment = " << vit->info();
continue;
}
meshTools::writeOBJ(str, pt, alignment.x() + pt);
meshTools::writeOBJ(str, pt, alignment.y() + pt);
meshTools::writeOBJ(str, pt, alignment.z() + pt);
// // Write alignments
// const tensor& alignment = vit->alignment();
// pointFromPoint pt = topoint(vit->point());
//
// if
// (
// alignment.x() == triad::unset[0]
// || alignment.y() == triad::unset[0]
// || alignment.z() == triad::unset[0]
// )
// {
// Info<< "Bad alignment = " << vit->info();
//
// vit->alignment() = tensor::I;
//
// Info<< "New alignment = " << vit->info();
//
// continue;
// }
//
// meshTools::writeOBJ(str, pt, alignment.x() + pt);
// meshTools::writeOBJ(str, pt, alignment.y() + pt);
// meshTools::writeOBJ(str, pt, alignment.z() + pt);
}
}
mesh.write();
sizes.write();
alignments.write();
}

View File

@ -95,6 +95,9 @@ public:
//- Runtime type information
ClassName("cellShapeControlMesh");
//- Return the mesh sub-directory name (usually "cellShapeControlMesh")
static word meshSubDir;
// Constructors

View File

@ -223,6 +223,13 @@ void Foam::controlMeshRefinement::initialMeshPopulation
const autoPtr<backgroundMeshDecomposition>& decomposition
)
{
if (shapeController_.shapeControlMesh().vertexCount() > 0)
{
// Mesh already populated.
Info<< "Cell size and alignment mesh already populated." << endl;
return;
}
autoPtr<boundBox> overallBoundBox;
// Need to pass in the background mesh decomposition so that can test if
@ -268,7 +275,7 @@ void Foam::controlMeshRefinement::initialMeshPopulation
controlFunction.initialVertices(pts, sizes, alignments);
Info<< " Got initial vertices list" << endl;
Info<< " Got initial vertices list of size " << pts.size() << endl;
List<Vb> vertices(pts.size());

View File

@ -981,7 +981,7 @@ Foam::conformalVoronoiMesh::conformalVoronoiMesh
const dictionary& foamyHexMeshDict
)
:
DistributedDelaunayMesh<Delaunay>(),
DistributedDelaunayMesh<Delaunay>(runTime),
runTime_(runTime),
rndGen_(64293*Pstream::myProcNo()),
foamyHexMeshControls_(foamyHexMeshDict),
@ -1046,6 +1046,18 @@ Foam::conformalVoronoiMesh::conformalVoronoiMesh
)
),
decomposition_()
{}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
Foam::conformalVoronoiMesh::~conformalVoronoiMesh()
{}
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
void Foam::conformalVoronoiMesh::initialiseForMotion()
{
if (foamyHexMeshControls().objOutput())
{
@ -1061,7 +1073,10 @@ Foam::conformalVoronoiMesh::conformalVoronoiMesh
runTime_,
rndGen_,
geometryToConformTo_,
foamyHexMeshDict.subDict("backgroundMeshDecomposition")
foamyHexMeshControls().foamyHexMeshDict().subDict
(
"backgroundMeshDecomposition"
)
)
);
}
@ -1120,18 +1135,56 @@ Foam::conformalVoronoiMesh::conformalVoronoiMesh
Foam::indexedVertexEnum::vtExternalFeaturePoint
);
}
//writeFixedPoints("fixedPointsStart.obj");
}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
void Foam::conformalVoronoiMesh::initialiseForConformation()
{
if (Pstream::parRun())
{
decomposition_.reset
(
new backgroundMeshDecomposition
(
runTime_,
rndGen_,
geometryToConformTo_,
foamyHexMeshControls().foamyHexMeshDict().subDict
(
"backgroundMeshDecomposition"
)
)
);
}
Foam::conformalVoronoiMesh::~conformalVoronoiMesh()
{}
insertInitialPoints();
insertFeaturePoints();
// Improve the guess that the backgroundMeshDecomposition makes with the
// initial positions. Use before building the surface conformation to
// better balance the surface conformation load.
distributeBackground(*this);
buildSurfaceConformation();
// The introduction of the surface conformation may have distorted the
// balance of vertices, distribute if necessary.
distributeBackground(*this);
if (Pstream::parRun())
{
sync(decomposition_().procBounds());
}
cellSizeMeshOverlapsBackground();
if (foamyHexMeshControls().printVertexInfo())
{
printVertexInfo(Info);
}
}
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
void Foam::conformalVoronoiMesh::move()
{
@ -1759,32 +1812,6 @@ void Foam::conformalVoronoiMesh::move()
if (time().outputTime())
{
writeMesh(time().timeName());
// label cellI = 0;
// for
// (
// Finite_cells_iterator cit = finite_cells_begin();
// cit != finite_cells_end();
// ++cit
// )
// {
// if
// (
// !cit->hasFarPoint()
// && !is_infinite(cit)
// )
// {
// cit->cellIndex() = cellI++;
// }
// }
//
// labelList vertexMap;
// labelList cellMap;
// autoPtr<fvMesh> tetMesh =
// createMesh("tetMesh", runTime_, vertexMap, cellMap);
//
// tetMesh().write();
//writeFixedPoints("fixedPointsStart_" + runTime_.timeName() + ".obj");
}
updateSizesAndAlignments(pointsToInsert);

View File

@ -734,7 +734,8 @@ private:
//- edge conformation location
bool nearFeatureEdgeLocation
(
pointIndexHit& pHit
const pointIndexHit& pHit,
pointIndexHit& nearestEdgeHit
) const;
//- Build or rebuild the edge location tree
@ -1038,6 +1039,10 @@ public:
// Member Functions
void initialiseForMotion();
void initialiseForConformation();
//- Move the vertices according to the controller, re-conforming to the
// surface as required
void move();

View File

@ -1787,6 +1787,11 @@ void Foam::conformalVoronoiMesh::indexDualVertices
}
}
OBJstream snapping1("snapToSurface1.obj");
OBJstream snapping2("snapToSurface2.obj");
OFstream tetToSnapTo("tetsToSnapTo.obj");
label offset = 0;
for
(
Delaunay::Finite_cells_iterator cit = finite_cells_begin();
@ -1892,6 +1897,88 @@ void Foam::conformalVoronoiMesh::indexDualVertices
}
}
// {
// // Snapping points far outside
// if (cit->boundaryDualVertex() && !cit->parallelDualVertex())
// {
// pointFromPoint dual = cit->dual();
//
// pointIndexHit hitInfo;
// label surfHit;
//
// // Find nearest surface point
// geometryToConformTo_.findSurfaceNearest
// (
// dual,
// sqr(targetCellSize(dual)),
// hitInfo,
// surfHit
// );
//
// if (!hitInfo.hit())
// {
// // Project dual to nearest point on tet
//
// tetPointRef tet
// (
// topoint(cit->vertex(0)->point()),
// topoint(cit->vertex(1)->point()),
// topoint(cit->vertex(2)->point()),
// topoint(cit->vertex(3)->point())
// );
//
// pointFromPoint nearestPointOnTet =
// tet.nearestPoint(dual).rawPoint();
//
// // Get nearest point on surface from tet.
// geometryToConformTo_.findSurfaceNearest
// (
// nearestPointOnTet,
// sqr(targetCellSize(nearestPointOnTet)),
// hitInfo,
// surfHit
// );
//
// vector snapDir = nearestPointOnTet - dual;
// snapDir /= mag(snapDir) + SMALL;
//
// drawDelaunayCell(tetToSnapTo, cit, offset);
// offset += 1;
//
// vectorField norm(1);
// allGeometry_[surfHit].getNormal
// (
// List<pointIndexHit>(1, hitInfo),
// norm
// );
// norm[0] /= mag(norm[0]) + SMALL;
//
// if
// (
// hitInfo.hit()
// && (mag(snapDir & norm[0]) > 0.5)
// )
// {
// snapping1.write
// (
// linePointRef(dual, nearestPointOnTet)
// );
//
// snapping2.write
// (
// linePointRef
// (
// nearestPointOnTet,
// hitInfo.hitPoint()
// )
// );
//
// pts[cit->cellIndex()] = hitInfo.hitPoint();
// }
// }
// }
// }
if (cit->boundaryDualVertex())
{
if (cit->featureEdgeDualVertex())
@ -2721,7 +2808,7 @@ void Foam::conformalVoronoiMesh::createFacesOwnerNeighbourAndPatches
patchPointPairSlaves[patchI].transfer(patchPPSlaves[patchI]);
}
// if (foamyHexMeshControls().objOutput())
if (foamyHexMeshControls().objOutput())
{
Info<< "Writing processor interfaces" << endl;

View File

@ -1928,14 +1928,16 @@ bool Foam::conformalVoronoiMesh::pointIsNearSurfaceLocation
bool Foam::conformalVoronoiMesh::nearFeatureEdgeLocation
(
pointIndexHit& pHit
const pointIndexHit& pHit,
pointIndexHit& nearestEdgeHit
) const
{
Foam::point pt = pHit.hitPoint();
const Foam::point& pt = pHit.hitPoint();
const scalar exclusionRangeSqr = featureEdgeExclusionDistanceSqr(pt);
bool closeToFeatureEdge = pointIsNearFeatureEdgeLocation(pt);
bool closeToFeatureEdge =
pointIsNearFeatureEdgeLocation(pt, nearestEdgeHit);
if (closeToFeatureEdge)
{
@ -1978,15 +1980,11 @@ bool Foam::conformalVoronoiMesh::nearFeatureEdgeLocation
if
(
mag(cosAngle) < searchConeAngle
&& (
mag(lineBetweenPoints)
> foamyHexMeshControls().pointPairDistanceCoeff()
*targetCellSize(pt)
)
&& (mag(lineBetweenPoints) > pointPairDistance(pt))
)
{
pt = edgeHit.hitPoint();
pHit.setPoint(pt);
//pt = edgeHit.hitPoint();
//pHit.setPoint(pt);
closeToFeatureEdge = false;
}
else
@ -2183,12 +2181,12 @@ void Foam::conformalVoronoiMesh::addSurfaceAndEdgeHits
if
(
!pointIsNearFeatureEdgeLocation
(
edPt,
nearestEdgeHit
)
// !nearFeatureEdgeLocation(edHit)
// !pointIsNearFeatureEdgeLocation
// (
// edPt,
// nearestEdgeHit
// )
!nearFeatureEdgeLocation(edHit, nearestEdgeHit)
)
{
appendToEdgeLocationTree(edPt);

View File

@ -337,11 +337,10 @@ inline void Foam::conformalVoronoiMesh::createPointPair
const Foam::point internalPt = surfPt - ppDistn;
const Foam::point externalPt = surfPt + ppDistn;
if
(
geometryToConformTo_.inside(internalPt)
&& geometryToConformTo_.outside(externalPt)
)
bool internalInside = geometryToConformTo_.inside(internalPt);
bool externalOutside = geometryToConformTo_.outside(externalPt);
if (internalInside && externalOutside)
{
pts.append
(
@ -369,11 +368,8 @@ inline void Foam::conformalVoronoiMesh::createPointPair
{
Info<< "Warning: point pair not inside/outside" << nl
<< " surfPt = " << surfPt << nl
<< " internal = "
<< internalPt << " " << geometryToConformTo_.inside(internalPt)
<< nl
<< " external = "
<< externalPt << " " << geometryToConformTo_.outside(externalPt)
<< " internal = " << internalPt << " " << internalInside << nl
<< " external = " << externalPt << " " << externalOutside
<< endl;
}
}

View File

@ -421,202 +421,247 @@ void Foam::conformalVoronoiMesh::writeMesh(const fileName& instance)
}
}
if (foamyHexMeshControls().writeCellShapeControlMesh())
{
cellShapeControls().shapeControlMesh().write();
}
if (foamyHexMeshControls().writeBackgroundMeshDecomposition())
{
Info<< nl << "Writing " << "backgroundMeshDecomposition" << endl;
// Have to explicitly update the mesh instance.
const_cast<fvMesh&>(decomposition_().mesh()).setInstance
(
time().timeName()
);
decomposition_().mesh().write();
}
if (foamyHexMeshControls().writeTetDualMesh())
{
// Determine map from Delaunay vertex to Dual mesh
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// From all Delaunay vertices to cell (positive index)
// or patch face (negative index)
labelList vertexToDualAddressing(number_of_vertices(), 0);
forAll(cellToDelaunayVertex, cellI)
{
label vertI = cellToDelaunayVertex[cellI];
if (vertexToDualAddressing[vertI] != 0)
{
FatalErrorIn("conformalVoronoiMesh::writeMesh(..)")
<< "Delaunay vertex " << vertI
<< " from cell " << cellI
<< " is already mapped to "
<< vertexToDualAddressing[vertI]
<< exit(FatalError);
}
vertexToDualAddressing[vertI] = cellI+1;
}
forAll(patchToDelaunayVertex, patchI)
{
const labelList& patchVertices = patchToDelaunayVertex[patchI];
forAll(patchVertices, i)
{
label vertI = patchVertices[i];
if (vertexToDualAddressing[vertI] > 0)
{
FatalErrorIn("conformalVoronoiMesh::writeMesh(..)")
<< "Delaunay vertex " << vertI
<< " from patch " << patchI
<< " local index " << i
<< " is already mapped to cell "
<< vertexToDualAddressing[vertI]-1
<< exit(FatalError);
}
// Vertex might be used by multiple faces. Which one to
// use? For now last one wins.
label dualFaceI = dualPatchStarts[patchI]+i;
vertexToDualAddressing[vertI] = -dualFaceI-1;
}
}
// Calculate tet mesh addressing
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pointField points;
labelList boundaryPts(number_of_finite_cells(), -1);
// From tet point back to Delaunay vertex index
labelList pointToDelaunayVertex;
faceList faces;
labelList owner;
labelList neighbour;
wordList patchTypes;
wordList patchNames;
PtrList<dictionary> patchDicts;
pointField cellCentres;
calcTetMesh
label cellI = 0;
for
(
points,
pointToDelaunayVertex,
faces,
owner,
neighbour,
patchTypes,
patchNames,
patchDicts
);
// Calculate map from tet points to dual mesh cells/patch faces
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
labelIOList pointDualAddressing
(
IOobject
(
"pointDualAddressing",
instance,
"tetDualMesh"/polyMesh::meshSubDir,
runTime_,
IOobject::NO_READ,
IOobject::AUTO_WRITE,
false
),
UIndirectList<label>
(
vertexToDualAddressing,
pointToDelaunayVertex
)()
);
label pointI = findIndex(pointDualAddressing, -1);
if (pointI != -1)
{
WarningIn
(
"conformalVoronoiMesh::writeMesh\n"
"(\n"
" const fileName& instance,\n"
" bool filterFaces\n"
")\n"
) << "Delaunay vertex " << pointI
<< " does not have a corresponding dual cell." << endl;
}
Info<< "Writing map from tetDualMesh points to Voronoi mesh to "
<< pointDualAddressing.objectPath() << endl;
pointDualAddressing.write();
// Write tet points corresponding to the Voronoi cell/face centre
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{
// Read Voronoi mesh
fvMesh mesh
(
IOobject
(
Foam::polyMesh::defaultRegion,
instance,
runTime_,
IOobject::MUST_READ
Finite_cells_iterator cit = finite_cells_begin();
cit != finite_cells_end();
++cit
)
);
pointIOField dualPoints
{
if
(
IOobject
(
"dualPoints",
instance,
"tetDualMesh"/polyMesh::meshSubDir,
runTime_,
IOobject::NO_READ,
IOobject::AUTO_WRITE,
false
),
points
);
forAll(pointDualAddressing, pointI)
!cit->hasFarPoint()
&& !is_infinite(cit)
)
{
label index = pointDualAddressing[pointI];
if (index > 0)
{
label cellI = index-1;
dualPoints[pointI] = mesh.cellCentres()[cellI];
}
else if (index < 0)
{
label faceI = -index-1;
if (faceI >= mesh.nInternalFaces())
{
dualPoints[pointI] = mesh.faceCentres()[faceI];
}
cit->cellIndex() = cellI++;
}
}
Info<< "Writing new tetDualMesh points mapped onto Voronoi mesh to "
<< dualPoints.objectPath() << endl
<< "Replace the polyMesh/points with these." << endl;
dualPoints.write();
}
Info<< nl << "Writing " << "tetDualMesh" << endl;
DistributedDelaunayMesh<Delaunay>::labelTolabelPairHashTable vertexMap;
labelList cellMap;
autoPtr<polyMesh> tetMesh =
createMesh("tetDualMesh", vertexMap, cellMap);
Info<< nl << "Writing tetDualMesh to " << instance << endl;
tetMesh().write();
PackedBoolList boundaryFacesToRemove;
writeMesh
(
"tetDualMesh",
instance,
points,
boundaryPts,
faces,
owner,
neighbour,
patchTypes,
patchNames,
patchDicts,
cellCentres,
boundaryFacesToRemove
);
// // Determine map from Delaunay vertex to Dual mesh
// // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// // From all Delaunay vertices to cell (positive index)
// // or patch face (negative index)
// labelList vertexToDualAddressing(number_of_vertices(), 0);
//
// forAll(cellToDelaunayVertex, cellI)
// {
// label vertI = cellToDelaunayVertex[cellI];
//
// if (vertexToDualAddressing[vertI] != 0)
// {
// FatalErrorIn("conformalVoronoiMesh::writeMesh(..)")
// << "Delaunay vertex " << vertI
// << " from cell " << cellI
// << " is already mapped to "
// << vertexToDualAddressing[vertI]
// << exit(FatalError);
// }
// vertexToDualAddressing[vertI] = cellI+1;
// }
//
// forAll(patchToDelaunayVertex, patchI)
// {
// const labelList& patchVertices = patchToDelaunayVertex[patchI];
//
// forAll(patchVertices, i)
// {
// label vertI = patchVertices[i];
//
// if (vertexToDualAddressing[vertI] > 0)
// {
// FatalErrorIn("conformalVoronoiMesh::writeMesh(..)")
// << "Delaunay vertex " << vertI
// << " from patch " << patchI
// << " local index " << i
// << " is already mapped to cell "
// << vertexToDualAddressing[vertI]-1
// << exit(FatalError);
// }
//
// // Vertex might be used by multiple faces. Which one to
// // use? For now last one wins.
// label dualFaceI = dualPatchStarts[patchI]+i;
// vertexToDualAddressing[vertI] = -dualFaceI-1;
// }
// }
//
//
// // Calculate tet mesh addressing
// // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// pointField points;
// labelList boundaryPts(number_of_finite_cells(), -1);
// // From tet point back to Delaunay vertex index
// labelList pointToDelaunayVertex;
// faceList faces;
// labelList owner;
// labelList neighbour;
// wordList patchTypes;
// wordList patchNames;
// PtrList<dictionary> patchDicts;
// pointField cellCentres;
//
// calcTetMesh
// (
// points,
// pointToDelaunayVertex,
// faces,
// owner,
// neighbour,
// patchTypes,
// patchNames,
// patchDicts
// );
//
//
//
// // Calculate map from tet points to dual mesh cells/patch faces
// // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// labelIOList pointDualAddressing
// (
// IOobject
// (
// "pointDualAddressing",
// instance,
// "tetDualMesh"/polyMesh::meshSubDir,
// runTime_,
// IOobject::NO_READ,
// IOobject::AUTO_WRITE,
// false
// ),
// UIndirectList<label>
// (
// vertexToDualAddressing,
// pointToDelaunayVertex
// )()
// );
//
// label pointI = findIndex(pointDualAddressing, -1);
// if (pointI != -1)
// {
// WarningIn
// (
// "conformalVoronoiMesh::writeMesh\n"
// "(\n"
// " const fileName& instance,\n"
// " bool filterFaces\n"
// ")\n"
// ) << "Delaunay vertex " << pointI
// << " does not have a corresponding dual cell." << endl;
// }
//
// Info<< "Writing map from tetDualMesh points to Voronoi mesh to "
// << pointDualAddressing.objectPath() << endl;
// pointDualAddressing.write();
//
//
//
// // Write tet points corresponding to the Voronoi cell/face centre
// // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// {
// // Read Voronoi mesh
// fvMesh mesh
// (
// IOobject
// (
// Foam::polyMesh::defaultRegion,
// instance,
// runTime_,
// IOobject::MUST_READ
// )
// );
// pointIOField dualPoints
// (
// IOobject
// (
// "dualPoints",
// instance,
// "tetDualMesh"/polyMesh::meshSubDir,
// runTime_,
// IOobject::NO_READ,
// IOobject::AUTO_WRITE,
// false
// ),
// points
// );
//
// forAll(pointDualAddressing, pointI)
// {
// label index = pointDualAddressing[pointI];
//
// if (index > 0)
// {
// label cellI = index-1;
// dualPoints[pointI] = mesh.cellCentres()[cellI];
// }
// else if (index < 0)
// {
// label faceI = -index-1;
// if (faceI >= mesh.nInternalFaces())
// {
// dualPoints[pointI] = mesh.faceCentres()[faceI];
// }
// }
// }
//
// Info<< "Writing tetDualMesh points mapped onto Voronoi mesh to "
// << dualPoints.objectPath() << endl
// << "Replace the polyMesh/points with these." << endl;
// dualPoints.write();
// }
//
//
// Info<< nl << "Writing tetDualMesh to " << instance << endl;
//
// PackedBoolList boundaryFacesToRemove;
// writeMesh
// (
// "tetDualMesh",
// instance,
// points,
// boundaryPts,
// faces,
// owner,
// neighbour,
// patchTypes,
// patchNames,
// patchDicts,
// cellCentres,
// boundaryFacesToRemove
// );
}
}

View File

@ -247,6 +247,20 @@ Foam::cvControls::cvControls
}
writeTetDualMesh_ = Switch(filteringDict.lookup("writeTetDualMesh"));
writeCellShapeControlMesh_ =
Switch(filteringDict.lookup("writeCellShapeControlMesh"));
if (Pstream::parRun())
{
writeBackgroundMeshDecomposition_ =
Switch(filteringDict.lookup("writeBackgroundMeshDecomposition"));
}
else
{
writeBackgroundMeshDecomposition_ = Switch(false);
}
}

View File

@ -202,6 +202,10 @@ class cvControls
//- Write tet mesh at output time (it always writes the Voronoi)
Switch writeTetDualMesh_;
Switch writeCellShapeControlMesh_;
Switch writeBackgroundMeshDecomposition_;
// Private Member Functions
@ -335,6 +339,12 @@ public:
//- Write tetMesh at output time
inline Switch writeTetDualMesh() const;
//- Write cellShapeControlMesh at output time
inline Switch writeCellShapeControlMesh() const;
//- Write backgroundMeshDecomposition at output time
inline Switch writeBackgroundMeshDecomposition() const;
};

View File

@ -215,5 +215,15 @@ inline Foam::Switch Foam::cvControls::writeTetDualMesh() const
return writeTetDualMesh_;
}
inline Foam::Switch Foam::cvControls::writeCellShapeControlMesh() const
{
return writeCellShapeControlMesh_;
}
inline Foam::Switch Foam::cvControls::writeBackgroundMeshDecomposition() const
{
return writeBackgroundMeshDecomposition_;
}
// ************************************************************************* //

View File

@ -58,7 +58,7 @@ List<Vb::Point> pointFile::initialPoints() const
IOobject
(
pointFileName_.name(),
foamyHexMesh_.time().constant(),
foamyHexMesh_.time().timeName(),
foamyHexMesh_.time(),
IOobject::MUST_READ,
IOobject::NO_WRITE

View File

@ -45,12 +45,22 @@ int main(int argc, char *argv[])
"check all surface geometry for quality"
);
Foam::argList::addBoolOption
(
"conformationOnly",
"conform to the initial points without any point motion"
);
#include "addOverwriteOption.H"
#include "setRootCase.H"
#include "createTime.H"
runTime.functionObjects().off();
const bool checkGeometry = args.optionFound("checkGeometry");
const bool conformationOnly = args.optionFound("conformationOnly");
const bool overwrite = args.optionFound("overwrite");
IOdictionary foamyHexMeshDict
(
@ -101,9 +111,26 @@ int main(int argc, char *argv[])
conformalVoronoiMesh::debug = true;
Info<< "Create mesh for time = " << runTime.timeName() << nl << endl;
conformalVoronoiMesh mesh(runTime, foamyHexMeshDict);
if (conformationOnly)
{
mesh.initialiseForConformation();
if (!overwrite)
{
runTime++;
}
mesh.writeMesh(runTime.timeName());
}
else
{
mesh.initialiseForMotion();
while (runTime.loop())
{
Info<< nl << "Time = " << runTime.timeName() << endl;
@ -114,6 +141,8 @@ int main(int argc, char *argv[])
<< " ClockTime = " << runTime.elapsedClockTime() << " s"
<< endl;
}
}
Info<< nl << "End" << nl << endl;

View File

@ -55,6 +55,9 @@ Usage
\param -fields \n
Use existing geometry decomposition and convert fields only.
\param -sets \n
Decompose cellSets, faceSets, pointSets.
\param -force \n
Remove any existing \a processor subdirectories before decomposing the
geometry.
@ -127,6 +130,11 @@ int main(int argc, char *argv[])
"use existing geometry decomposition and convert fields only"
);
argList::addBoolOption
(
"sets",
"decompose cellSets, faceSets, pointSets"
);
argList::addBoolOption
(
"force",
"remove existing processor*/ subdirs before decomposing the geometry"
@ -146,6 +154,7 @@ int main(int argc, char *argv[])
bool writeCellDist = args.optionFound("cellDist");
bool copyUniform = args.optionFound("copyUniform");
bool decomposeFieldsOnly = args.optionFound("fields");
bool decomposeSets = args.optionFound("sets");
bool forceOverwrite = args.optionFound("force");
bool ifRequiredDecomposition = args.optionFound("ifRequired");
@ -312,7 +321,7 @@ int main(int argc, char *argv[])
{
mesh.decomposeMesh();
mesh.writeDecomposition();
mesh.writeDecomposition(decomposeSets);
if (writeCellDist)
{

View File

@ -34,6 +34,10 @@ License
#include "globalMeshData.H"
#include "DynamicList.H"
#include "fvFieldDecomposer.H"
#include "IOobjectList.H"
#include "cellSet.H"
#include "faceSet.H"
#include "pointSet.H"
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
@ -123,7 +127,7 @@ Foam::domainDecomposition::~domainDecomposition()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
bool Foam::domainDecomposition::writeDecomposition()
bool Foam::domainDecomposition::writeDecomposition(const bool decomposeSets)
{
Info<< "\nConstructing processor meshes" << endl;
@ -160,6 +164,37 @@ bool Foam::domainDecomposition::writeDecomposition()
}
PtrList<const cellSet> cellSets;
PtrList<const faceSet> faceSets;
PtrList<const pointSet> pointSets;
if (decomposeSets)
{
// Read sets
IOobjectList objects(*this, facesInstance(), "polyMesh/sets");
{
IOobjectList cSets(objects.lookupClass(cellSet::typeName));
forAllConstIter(IOobjectList, cSets, iter)
{
cellSets.append(new cellSet(*iter()));
}
}
{
IOobjectList fSets(objects.lookupClass(faceSet::typeName));
forAllConstIter(IOobjectList, fSets, iter)
{
faceSets.append(new faceSet(*iter()));
}
}
{
IOobjectList pSets(objects.lookupClass(pointSet::typeName));
forAllConstIter(IOobjectList, pSets, iter)
{
pointSets.append(new pointSet(*iter()));
}
}
}
label maxProcCells = 0;
label totProcFaces = 0;
label maxProcPatches = 0;
@ -732,6 +767,52 @@ bool Foam::domainDecomposition::writeDecomposition()
procMesh.write();
if (decomposeSets)
{
forAll(cellSets, i)
{
const cellSet& cs = cellSets[i];
cellSet set(procMesh, cs.name(), cs.size()/nProcs_);
forAll(curCellLabels, i)
{
if (cs.found(curCellLabels[i]))
{
set.insert(i);
}
}
set.write();
}
forAll(faceSets, i)
{
const faceSet& cs = faceSets[i];
faceSet set(procMesh, cs.name(), cs.size()/nProcs_);
forAll(curFaceLabels, i)
{
if (cs.found(mag(curFaceLabels[i])-1))
{
set.insert(i);
}
}
set.write();
}
forAll(pointSets, i)
{
const pointSet& cs = pointSets[i];
pointSet set(procMesh, cs.name(), cs.size()/nProcs_);
forAll(curPointLabels, i)
{
if (cs.found(curPointLabels[i]))
{
set.insert(i);
}
}
set.write();
}
}
// Write points if pointsInstance differing from facesInstance
if (facesInstancePointsPtr_.valid())
{

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -172,7 +172,7 @@ public:
void decomposeMesh();
//- Write decomposition
bool writeDecomposition();
bool writeDecomposition(const bool decomposeSets);
//- Cell-processor decomposition labels
const labelList& cellToProc() const

View File

@ -1,6 +1,7 @@
EXE_INC = \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/lagrangian/basic/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/parallel/reconstruct/reconstruct/lnInclude \
-I$(LIB_SRC)/regionModels/regionModel/lnInclude

View File

@ -41,6 +41,10 @@ Description
#include "pointFieldReconstructor.H"
#include "reconstructLagrangian.H"
#include "cellSet.H"
#include "faceSet.H"
#include "pointSet.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
bool haveAllTimes
@ -99,6 +103,11 @@ int main(int argc, char *argv[])
"skip reconstructing lagrangian positions and fields"
);
argList::addBoolOption
(
"sets",
"reconstruct cellSets, faceSets, pointSets"
);
argList::addBoolOption
(
"newTimes",
"only reconstruct new times (i.e. that do not exist already)"
@ -113,6 +122,9 @@ int main(int argc, char *argv[])
args.optionLookup("fields")() >> selectedFields;
}
const bool reconstructSets = args.optionFound("sets");
const bool noLagrangian = args.optionFound("noLagrangian");
HashSet<word> selectedLagrangianFields;
@ -668,6 +680,148 @@ int main(int argc, char *argv[])
Info<< "No lagrangian fields" << nl << endl;
}
}
if (reconstructSets)
{
// Scan to find all sets
HashTable<label> cSetNames;
HashTable<label> fSetNames;
HashTable<label> pSetNames;
forAll(procMeshes.meshes(), procI)
{
const fvMesh& procMesh = procMeshes.meshes()[procI];
IOobjectList objects
(
procMesh, procMesh.facesInstance(), "polyMesh/sets"
);
IOobjectList cSets(objects.lookupClass(cellSet::typeName));
forAllConstIter(IOobjectList, cSets, iter)
{
cSetNames.insert(iter.key(), cSetNames.size());
}
IOobjectList fSets(objects.lookupClass(faceSet::typeName));
forAllConstIter(IOobjectList, fSets, iter)
{
fSetNames.insert(iter.key(), fSetNames.size());
}
IOobjectList pSets(objects.lookupClass(pointSet::typeName));
forAllConstIter(IOobjectList, pSets, iter)
{
pSetNames.insert(iter.key(), pSetNames.size());
}
}
// Construct all sets
PtrList<cellSet> cellSets(cSetNames.size());
PtrList<faceSet> faceSets(fSetNames.size());
PtrList<pointSet> pointSets(pSetNames.size());
// Load sets
forAll(procMeshes.meshes(), procI)
{
const fvMesh& procMesh = procMeshes.meshes()[procI];
IOobjectList objects
(
procMesh, procMesh.facesInstance(), "polyMesh/sets"
);
// cellSets
const labelList& cellMap =
procMeshes.cellProcAddressing()[procI];
IOobjectList cSets(objects.lookupClass(cellSet::typeName));
forAllConstIter(IOobjectList, cSets, iter)
{
// Load cellSet
const cellSet procSet(*iter());
label setI = cSetNames[iter.key()];
if (!cellSets.set(setI))
{
cellSets.set
(
setI,
new cellSet(mesh, iter.key(), procSet.size())
);
}
cellSet& cSet = cellSets[setI];
forAllConstIter(cellSet, procSet, iter)
{
cSet.insert(cellMap[iter.key()]);
}
}
// faceSets
const labelList& faceMap =
procMeshes.faceProcAddressing()[procI];
IOobjectList fSets(objects.lookupClass(faceSet::typeName));
forAllConstIter(IOobjectList, fSets, iter)
{
// Load faceSet
const faceSet procSet(*iter());
label setI = fSetNames[iter.key()];
if (!faceSets.set(setI))
{
faceSets.set
(
setI,
new faceSet(mesh, iter.key(), procSet.size())
);
}
faceSet& fSet = faceSets[setI];
forAllConstIter(faceSet, procSet, iter)
{
fSet.insert(mag(faceMap[iter.key()])-1);
}
}
// pointSets
const labelList& pointMap =
procMeshes.pointProcAddressing()[procI];
IOobjectList pSets(objects.lookupClass(pointSet::typeName));
forAllConstIter(IOobjectList, pSets, iter)
{
// Load pointSet
const pointSet propSet(*iter());
label setI = pSetNames[iter.key()];
if (!pointSets.set(setI))
{
pointSets.set
(
setI,
new pointSet(mesh, iter.key(), propSet.size())
);
}
pointSet& pSet = pointSets[setI];
forAllConstIter(pointSet, propSet, iter)
{
pSet.insert(pointMap[iter.key()]);
}
}
}
// Write sets
forAll(cellSets, i)
{
cellSets[i].write();
}
forAll(faceSets, i)
{
faceSets[i].write();
}
forAll(pointSets, i)
{
pointSets[i].write();
}
}
}
}

View File

@ -1,11 +0,0 @@
vtkPV398Foam.C
vtkPV398FoamFields.C
vtkPV398FoamMesh.C
vtkPV398FoamMeshLagrangian.C
vtkPV398FoamMeshSet.C
vtkPV398FoamMeshVolume.C
vtkPV398FoamMeshZone.C
vtkPV398FoamUpdateInfo.C
vtkPV398FoamUtils.C
LIB = $(FOAM_LIBBIN)/libvtkPV398Foam

View File

@ -1,5 +0,0 @@
vtkPV398blockMesh.C
vtkPV398blockMeshConvert.C
vtkPV398blockMeshUtils.C
LIB = $(FOAM_LIBBIN)/libvtkPV398blockMesh

View File

@ -1,3 +0,0 @@
vtkPV398Readers.C
LIB = $(FOAM_LIBBIN)/libvtkPV398Readers

View File

@ -2,7 +2,7 @@
cd ${0%/*} || exit 1 # run from this directory
#set -x
if [ "$ParaView_VERSION" != "3.98.1" ]
if [ "$ParaView_VERSION" != "4.0.1" ]
then
if [ -d "$ParaView_DIR" -a -r "$ParaView_DIR" ]
then

View File

@ -2,8 +2,8 @@
cd ${0%/*} || exit 1 # run from this directory
set -x
wclean libso vtkPV398Readers
PV398blockMeshReader/Allwclean
PV398FoamReader/Allwclean
wclean libso vtkPV4Readers
PV4blockMeshReader/Allwclean
PV4FoamReader/Allwclean
# ----------------------------------------------------------------- end-of-file

View File

@ -2,7 +2,7 @@
cd ${0%/*} || exit 1 # run from this directory
#set -x
if [ "$ParaView_VERSION" == "3.98.1" ]
if [ "$ParaView_VERSION" == "4.0.1" ]
then
if [ -d "$ParaView_DIR" -a -r "$ParaView_DIR" ]
then
@ -14,14 +14,14 @@ if [ "$ParaView_VERSION" == "3.98.1" ]
# ensure CMake gets the correct C++ compiler
[ -n "$WM_CXX" ] && export CXX="$WM_CXX"
wmake libso vtkPV398Readers
PV398blockMeshReader/Allwmake
PV398FoamReader/Allwmake
wmake libso vtkPV4Readers
PV4blockMeshReader/Allwmake
PV4FoamReader/Allwmake
else
echo "ERROR: ParaView not found in $ParaView_DIR"
fi
else
echo "WARN: PV398 readers not building: ParaView_VERSION=$ParaView_VERSION"
echo "WARN: PV4 readers not building: ParaView_VERSION=$ParaView_VERSION"
fi
# ----------------------------------------------------------------- end-of-file

View File

@ -3,9 +3,9 @@ cd ${0%/*} || exit 1 # run from this directory
set -x
# deal with client/server vs combined plugins
rm -f $FOAM_LIBBIN/libPV398FoamReader* 2>/dev/null
rm -f $FOAM_LIBBIN/libPV4FoamReader* 2>/dev/null
rm -rf PV398FoamReader/Make
wclean libso vtkPV398Foam
rm -rf PV4FoamReader/Make
wclean libso vtkPV4Foam
# ----------------------------------------------------------------- end-of-file

View File

@ -4,9 +4,9 @@ set -x
if [ -d "$ParaView_DIR" -a -r "$ParaView_DIR" ]
then
wmake libso vtkPV398Foam
wmake libso vtkPV4Foam
(
cd PV398FoamReader
cd PV4FoamReader
mkdir -p Make/$WM_OPTIONS > /dev/null 2>&1
cd Make/$WM_OPTIONS
cmake ../..

View File

@ -21,7 +21,7 @@ INCLUDE_DIRECTORIES(
$ENV{WM_PROJECT_DIR}/src/OpenFOAM/lnInclude
$ENV{WM_PROJECT_DIR}/src/OSspecific/$ENV{WM_OSTYPE}/lnInclude
$ENV{WM_PROJECT_DIR}/src/finiteVolume/lnInclude
${PROJECT_SOURCE_DIR}/../vtkPV398Foam
${PROJECT_SOURCE_DIR}/../vtkPV4Foam
)
ADD_DEFINITIONS(
@ -41,45 +41,45 @@ SET(
#
# Extend the auto-generated panel
QT4_WRAP_CPP(MOC_SRCS pqPV398FoamReaderPanel.h)
QT4_WRAP_CPP(MOC_SRCS pqPV4FoamReaderPanel.h)
ADD_PARAVIEW_OBJECT_PANEL(IFACES IFACE_SRCS
CLASS_NAME pqPV398FoamReaderPanel
XML_NAME PV398FoamReader # name of SourceProxy in *SM.xml
CLASS_NAME pqPV4FoamReaderPanel
XML_NAME PV4FoamReader # name of SourceProxy in *SM.xml
XML_GROUP sources
)
ADD_PARAVIEW_PLUGIN(
PV398FoamReader_SM "1.0"
SERVER_MANAGER_XML PV398FoamReader_SM.xml
SERVER_MANAGER_SOURCES vtkPV398FoamReader.cxx
PV4FoamReader_SM "1.0"
SERVER_MANAGER_XML PV4FoamReader_SM.xml
SERVER_MANAGER_SOURCES vtkPV4FoamReader.cxx
GUI_INTERFACES ${IFACES}
GUI_SOURCES pqPV398FoamReaderPanel.cxx
GUI_SOURCES pqPV4FoamReaderPanel.cxx
${MOC_SRCS} ${UI_SRCS} ${IFACE_SRCS}
GUI_RESOURCE_FILES PV398FoamReader.xml
GUI_RESOURCE_FILES PV4FoamReader.xml
)
# #
# # Define the server-side portion of the reader plugin
# #
# ADD_PARAVIEW_PLUGIN(
# PV398FoamReader_SM "1.0"
# SERVER_MANAGER_XML PV398FoamReader_SM.xml
# SERVER_MANAGER_SOURCES vtkPV398FoamReader.cxx
# PV4FoamReader_SM "1.0"
# SERVER_MANAGER_XML PV4FoamReader_SM.xml
# SERVER_MANAGER_SOURCES vtkPV4FoamReader.cxx
# )
# #
# # Define the client-side portion of the reader plugin
# #
# ADD_PARAVIEW_PLUGIN(
# PV398FoamReader "1.0"
# PV4FoamReader "1.0"
# GUI_RESOURCES PV3FoamReader.qrc
# )
#
TARGET_LINK_LIBRARIES(
PV398FoamReader_SM
PV4FoamReader_SM
OpenFOAM
finiteVolume
vtkPV398Foam
vtkPV4Foam
)
#-----------------------------------------------------------------------------

View File

@ -1,5 +1,5 @@
<RCC>
<qresource prefix="/ParaViewResources" >
<file>PV398FoamReader.xml</file>
<file>PV4FoamReader.xml</file>
</qresource>
</RCC>

View File

@ -1,5 +1,5 @@
<ParaViewReaders>
<Reader name="PV398FoamReader"
<Reader name="PV4FoamReader"
extensions="OpenFOAM"
file_description="OpenFOAM Reader">
</Reader>

View File

@ -1,8 +1,8 @@
<ServerManagerConfiguration>
<ProxyGroup name="sources">
<SourceProxy
name="PV398FoamReader"
class="vtkPV398FoamReader">
name="PV4FoamReader"
class="vtkPV4FoamReader">
<!-- File name - compulsory -->
<StringVectorProperty

View File

@ -23,7 +23,7 @@ License
\*---------------------------------------------------------------------------*/
#include "pqPV398FoamReaderPanel.h"
#include "pqPV4FoamReaderPanel.h"
// QT
#include <QGridLayout>
@ -50,7 +50,7 @@ License
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
pqPV398FoamReaderPanel::pqPV398FoamReaderPanel
pqPV4FoamReaderPanel::pqPV4FoamReaderPanel
(
pqProxy *proxy,
QWidget *p
@ -339,7 +339,7 @@ pqPV398FoamReaderPanel::pqPV398FoamReaderPanel
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
void pqPV398FoamReaderPanel::CacheMeshToggled()
void pqPV4FoamReaderPanel::CacheMeshToggled()
{
vtkSMIntVectorProperty::SafeDownCast
(
@ -348,7 +348,7 @@ void pqPV398FoamReaderPanel::CacheMeshToggled()
}
void pqPV398FoamReaderPanel::RefreshPressed()
void pqPV4FoamReaderPanel::RefreshPressed()
{
// update everything
vtkSMIntVectorProperty::SafeDownCast
@ -363,7 +363,7 @@ void pqPV398FoamReaderPanel::RefreshPressed()
}
void pqPV398FoamReaderPanel::ZeroTimeToggled()
void pqPV4FoamReaderPanel::ZeroTimeToggled()
{
vtkSMIntVectorProperty::SafeDownCast
(
@ -374,7 +374,7 @@ void pqPV398FoamReaderPanel::ZeroTimeToggled()
}
void pqPV398FoamReaderPanel::ShowPatchNamesToggled()
void pqPV4FoamReaderPanel::ShowPatchNamesToggled()
{
vtkSMIntVectorProperty::SafeDownCast
(
@ -391,7 +391,7 @@ void pqPV398FoamReaderPanel::ShowPatchNamesToggled()
}
void pqPV398FoamReaderPanel::ShowGroupsOnlyToggled()
void pqPV4FoamReaderPanel::ShowGroupsOnlyToggled()
{
vtkSMProperty* prop;
@ -407,7 +407,7 @@ void pqPV398FoamReaderPanel::ShowGroupsOnlyToggled()
}
void pqPV398FoamReaderPanel::IncludeSetsToggled()
void pqPV4FoamReaderPanel::IncludeSetsToggled()
{
vtkSMProperty* prop;
@ -423,7 +423,7 @@ void pqPV398FoamReaderPanel::IncludeSetsToggled()
}
void pqPV398FoamReaderPanel::IncludeZonesToggled()
void pqPV4FoamReaderPanel::IncludeZonesToggled()
{
vtkSMProperty* prop;
@ -439,7 +439,7 @@ void pqPV398FoamReaderPanel::IncludeZonesToggled()
}
void pqPV398FoamReaderPanel::ExtrapolatePatchesToggled()
void pqPV4FoamReaderPanel::ExtrapolatePatchesToggled()
{
vtkSMProperty* prop;
@ -452,7 +452,7 @@ void pqPV398FoamReaderPanel::ExtrapolatePatchesToggled()
}
void pqPV398FoamReaderPanel::InterpolateVolFieldsToggled()
void pqPV4FoamReaderPanel::InterpolateVolFieldsToggled()
{
vtkSMProperty* prop;

View File

@ -22,19 +22,19 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
pqPV398FoamReaderPanel
pqPV4FoamReaderPanel
Description
GUI modifications for the ParaView reader panel
A custom panel for the PV398FoamReader.
A custom panel for the PV4FoamReader.
SourceFiles
pqPV398FoamReaderPanel.cxx
pqPV4FoamReaderPanel.cxx
\*---------------------------------------------------------------------------*/
#ifndef pqPV398FoamReaderPanel_h
#define pqPV398FoamReaderPanel_h
#ifndef pqPV4FoamReaderPanel_h
#define pqPV4FoamReaderPanel_h
#include "pqAutoGeneratedObjectPanel.h"
@ -51,10 +51,10 @@ class vtkSMSourceProxy;
/*---------------------------------------------------------------------------*\
Class pqPV398FoamReaderPanel Declaration
Class pqPV4FoamReaderPanel Declaration
\*---------------------------------------------------------------------------*/
class pqPV398FoamReaderPanel
class pqPV4FoamReaderPanel
:
public pqAutoGeneratedObjectPanel
{
@ -105,11 +105,11 @@ public:
// Constructors
//- Construct from components
pqPV398FoamReaderPanel(pqProxy*, QWidget*);
pqPV4FoamReaderPanel(pqProxy*, QWidget*);
//- Destructor
// virtual ~pqPV398FoamReaderPanel();
// virtual ~pqPV4FoamReaderPanel();
};

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
\*---------------------------------------------------------------------------*/
#include "vtkPV398FoamReader.h"
#include "vtkPV4FoamReader.h"
#include "pqApplicationCore.h"
#include "pqRenderView.h"
@ -40,18 +40,18 @@ License
#include "vtkStringArray.h"
// OpenFOAM includes
#include "vtkPV398Foam.H"
#include "vtkPV4Foam.H"
#undef EXPERIMENTAL_TIME_CACHING
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
vtkStandardNewMacro(vtkPV398FoamReader);
vtkStandardNewMacro(vtkPV4FoamReader);
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
vtkPV398FoamReader::vtkPV398FoamReader()
vtkPV4FoamReader::vtkPV4FoamReader()
{
Debug = 0;
vtkDebugMacro(<<"Constructor");
@ -63,7 +63,7 @@ vtkPV398FoamReader::vtkPV398FoamReader()
output0_ = NULL;
#ifdef VTKPV398FOAM_DUALPORT
#ifdef VTKPV4FOAM_DUALPORT
// Add second output for the Lagrangian
this->SetNumberOfOutputPorts(2);
vtkMultiBlockDataSet *lagrangian = vtkMultiBlockDataSet::New();
@ -100,7 +100,7 @@ vtkPV398FoamReader::vtkPV398FoamReader()
SelectionObserver = vtkCallbackCommand::New();
SelectionObserver->SetCallback
(
&vtkPV398FoamReader::SelectionModifiedCallback
&vtkPV4FoamReader::SelectionModifiedCallback
);
SelectionObserver->SetClientData(this);
@ -129,7 +129,7 @@ vtkPV398FoamReader::vtkPV398FoamReader()
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
vtkPV398FoamReader::~vtkPV398FoamReader()
vtkPV4FoamReader::~vtkPV4FoamReader()
{
vtkDebugMacro(<<"Deconstructor");
@ -168,7 +168,7 @@ vtkPV398FoamReader::~vtkPV398FoamReader()
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
// Do everything except set the output info
int vtkPV398FoamReader::RequestInformation
int vtkPV4FoamReader::RequestInformation
(
vtkInformation* vtkNotUsed(request),
vtkInformationVector** vtkNotUsed(inputVector),
@ -177,7 +177,7 @@ int vtkPV398FoamReader::RequestInformation
{
vtkDebugMacro(<<"RequestInformation");
if (Foam::vtkPV398Foam::debug)
if (Foam::vtkPV4Foam::debug)
{
cout<<"REQUEST_INFORMATION\n";
}
@ -190,7 +190,7 @@ int vtkPV398FoamReader::RequestInformation
int nInfo = outputVector->GetNumberOfInformationObjects();
if (Foam::vtkPV398Foam::debug)
if (Foam::vtkPV4Foam::debug)
{
cout<<"RequestInformation with " << nInfo << " item(s)\n";
for (int infoI = 0; infoI < nInfo; ++infoI)
@ -201,7 +201,7 @@ int vtkPV398FoamReader::RequestInformation
if (!foamData_)
{
foamData_ = new Foam::vtkPV398Foam(FileName, this);
foamData_ = new Foam::vtkPV4Foam(FileName, this);
}
else
{
@ -238,7 +238,7 @@ int vtkPV398FoamReader::RequestInformation
timeRange[0] = timeSteps[0];
timeRange[1] = timeSteps[nTimeSteps-1];
if (Foam::vtkPV398Foam::debug > 1)
if (Foam::vtkPV4Foam::debug > 1)
{
cout<<"nTimeSteps " << nTimeSteps << "\n"
<<"timeRange " << timeRange[0] << " to " << timeRange[1]
@ -268,7 +268,7 @@ int vtkPV398FoamReader::RequestInformation
// Set the output info
int vtkPV398FoamReader::RequestData
int vtkPV4FoamReader::RequestData
(
vtkInformation* vtkNotUsed(request),
vtkInformationVector** vtkNotUsed(inputVector),
@ -292,7 +292,7 @@ int vtkPV398FoamReader::RequestData
int nInfo = outputVector->GetNumberOfInformationObjects();
if (Foam::vtkPV398Foam::debug)
if (Foam::vtkPV4Foam::debug)
{
cout<<"RequestData with " << nInfo << " item(s)\n";
for (int infoI = 0; infoI < nInfo; ++infoI)
@ -310,7 +310,7 @@ int vtkPV398FoamReader::RequestData
// taking port0 as the lead for other outputs would be nice, but fails when
// a filter is added - we need to check everything
// but since PREVIOUS_UPDATE_TIME_STEPS() is protected, relay the logic
// to the vtkPV398Foam::setTime() method
// to the vtkPV4Foam::setTime() method
for (int infoI = 0; infoI < nInfo; ++infoI)
{
vtkInformation *outInfo = outputVector->GetInformationObject(infoI);
@ -342,7 +342,7 @@ int vtkPV398FoamReader::RequestData
)
);
if (Foam::vtkPV398Foam::debug)
if (Foam::vtkPV4Foam::debug)
{
cout<< "update output with "
<< output->GetNumberOfBlocks() << " blocks\n";
@ -370,7 +370,7 @@ int vtkPV398FoamReader::RequestData
output->ShallowCopy(output0_);
}
if (Foam::vtkPV398Foam::debug)
if (Foam::vtkPV4Foam::debug)
{
if (needsUpdate)
{
@ -390,7 +390,7 @@ int vtkPV398FoamReader::RequestData
#else
#ifdef VTKPV398FOAM_DUALPORT
#ifdef VTKPV4FOAM_DUALPORT
foamData_->Update
(
output,
@ -417,13 +417,13 @@ int vtkPV398FoamReader::RequestData
}
void vtkPV398FoamReader::SetRefresh(int val)
void vtkPV4FoamReader::SetRefresh(int val)
{
Modified();
}
void vtkPV398FoamReader::SetIncludeSets(int val)
void vtkPV4FoamReader::SetIncludeSets(int val)
{
if (IncludeSets != val)
{
@ -436,7 +436,7 @@ void vtkPV398FoamReader::SetIncludeSets(int val)
}
void vtkPV398FoamReader::SetIncludeZones(int val)
void vtkPV4FoamReader::SetIncludeZones(int val)
{
if (IncludeZones != val)
{
@ -449,7 +449,7 @@ void vtkPV398FoamReader::SetIncludeZones(int val)
}
void vtkPV398FoamReader::SetShowPatchNames(int val)
void vtkPV4FoamReader::SetShowPatchNames(int val)
{
if (ShowPatchNames != val)
{
@ -459,7 +459,7 @@ void vtkPV398FoamReader::SetShowPatchNames(int val)
}
void vtkPV398FoamReader::SetShowGroupsOnly(int val)
void vtkPV4FoamReader::SetShowGroupsOnly(int val)
{
if (ShowGroupsOnly != val)
{
@ -472,7 +472,7 @@ void vtkPV398FoamReader::SetShowGroupsOnly(int val)
}
void vtkPV398FoamReader::updatePatchNamesView(const bool show)
void vtkPV4FoamReader::updatePatchNamesView(const bool show)
{
pqApplicationCore* appCore = pqApplicationCore::instance();
@ -506,7 +506,7 @@ void vtkPV398FoamReader::updatePatchNamesView(const bool show)
}
void vtkPV398FoamReader::PrintSelf(ostream& os, vtkIndent indent)
void vtkPV4FoamReader::PrintSelf(ostream& os, vtkIndent indent)
{
vtkDebugMacro(<<"PrintSelf");
@ -522,7 +522,7 @@ void vtkPV398FoamReader::PrintSelf(ostream& os, vtkIndent indent)
}
int vtkPV398FoamReader::GetTimeStep()
int vtkPV4FoamReader::GetTimeStep()
{
return foamData_ ? foamData_->timeIndex() : -1;
}
@ -531,35 +531,35 @@ int vtkPV398FoamReader::GetTimeStep()
// ----------------------------------------------------------------------
// Parts selection list control
vtkDataArraySelection* vtkPV398FoamReader::GetPartSelection()
vtkDataArraySelection* vtkPV4FoamReader::GetPartSelection()
{
vtkDebugMacro(<<"GetPartSelection");
return PartSelection;
}
int vtkPV398FoamReader::GetNumberOfPartArrays()
int vtkPV4FoamReader::GetNumberOfPartArrays()
{
vtkDebugMacro(<<"GetNumberOfPartArrays");
return PartSelection->GetNumberOfArrays();
}
const char* vtkPV398FoamReader::GetPartArrayName(int index)
const char* vtkPV4FoamReader::GetPartArrayName(int index)
{
vtkDebugMacro(<<"GetPartArrayName");
return PartSelection->GetArrayName(index);
}
int vtkPV398FoamReader::GetPartArrayStatus(const char* name)
int vtkPV4FoamReader::GetPartArrayStatus(const char* name)
{
vtkDebugMacro(<<"GetPartArrayStatus");
return PartSelection->ArrayIsEnabled(name);
}
void vtkPV398FoamReader::SetPartArrayStatus(const char* name, int status)
void vtkPV4FoamReader::SetPartArrayStatus(const char* name, int status)
{
vtkDebugMacro("Set mesh part \"" << name << "\" status to: " << status);
@ -577,35 +577,35 @@ void vtkPV398FoamReader::SetPartArrayStatus(const char* name, int status)
// ----------------------------------------------------------------------
// volField selection list control
vtkDataArraySelection* vtkPV398FoamReader::GetVolFieldSelection()
vtkDataArraySelection* vtkPV4FoamReader::GetVolFieldSelection()
{
vtkDebugMacro(<<"GetVolFieldSelection");
return VolFieldSelection;
}
int vtkPV398FoamReader::GetNumberOfVolFieldArrays()
int vtkPV4FoamReader::GetNumberOfVolFieldArrays()
{
vtkDebugMacro(<<"GetNumberOfVolFieldArrays");
return VolFieldSelection->GetNumberOfArrays();
}
const char* vtkPV398FoamReader::GetVolFieldArrayName(int index)
const char* vtkPV4FoamReader::GetVolFieldArrayName(int index)
{
vtkDebugMacro(<<"GetVolFieldArrayName");
return VolFieldSelection->GetArrayName(index);
}
int vtkPV398FoamReader::GetVolFieldArrayStatus(const char* name)
int vtkPV4FoamReader::GetVolFieldArrayStatus(const char* name)
{
vtkDebugMacro(<<"GetVolFieldArrayStatus");
return VolFieldSelection->ArrayIsEnabled(name);
}
void vtkPV398FoamReader::SetVolFieldArrayStatus(const char* name, int status)
void vtkPV4FoamReader::SetVolFieldArrayStatus(const char* name, int status)
{
vtkDebugMacro(<<"SetVolFieldArrayStatus");
if (status)
@ -622,35 +622,35 @@ void vtkPV398FoamReader::SetVolFieldArrayStatus(const char* name, int status)
// ----------------------------------------------------------------------
// pointField selection list control
vtkDataArraySelection* vtkPV398FoamReader::GetPointFieldSelection()
vtkDataArraySelection* vtkPV4FoamReader::GetPointFieldSelection()
{
vtkDebugMacro(<<"GetPointFieldSelection");
return PointFieldSelection;
}
int vtkPV398FoamReader::GetNumberOfPointFieldArrays()
int vtkPV4FoamReader::GetNumberOfPointFieldArrays()
{
vtkDebugMacro(<<"GetNumberOfPointFieldArrays");
return PointFieldSelection->GetNumberOfArrays();
}
const char* vtkPV398FoamReader::GetPointFieldArrayName(int index)
const char* vtkPV4FoamReader::GetPointFieldArrayName(int index)
{
vtkDebugMacro(<<"GetPointFieldArrayName");
return PointFieldSelection->GetArrayName(index);
}
int vtkPV398FoamReader::GetPointFieldArrayStatus(const char* name)
int vtkPV4FoamReader::GetPointFieldArrayStatus(const char* name)
{
vtkDebugMacro(<<"GetPointFieldArrayStatus");
return PointFieldSelection->ArrayIsEnabled(name);
}
void vtkPV398FoamReader::SetPointFieldArrayStatus(const char* name, int status)
void vtkPV4FoamReader::SetPointFieldArrayStatus(const char* name, int status)
{
vtkDebugMacro(<<"SetPointFieldArrayStatus");
if (status)
@ -667,35 +667,35 @@ void vtkPV398FoamReader::SetPointFieldArrayStatus(const char* name, int status)
// ----------------------------------------------------------------------
// lagrangianField selection list control
vtkDataArraySelection* vtkPV398FoamReader::GetLagrangianFieldSelection()
vtkDataArraySelection* vtkPV4FoamReader::GetLagrangianFieldSelection()
{
vtkDebugMacro(<<"GetLagrangianFieldSelection");
return LagrangianFieldSelection;
}
int vtkPV398FoamReader::GetNumberOfLagrangianFieldArrays()
int vtkPV4FoamReader::GetNumberOfLagrangianFieldArrays()
{
vtkDebugMacro(<<"GetNumberOfLagrangianFieldArrays");
return LagrangianFieldSelection->GetNumberOfArrays();
}
const char* vtkPV398FoamReader::GetLagrangianFieldArrayName(int index)
const char* vtkPV4FoamReader::GetLagrangianFieldArrayName(int index)
{
vtkDebugMacro(<<"GetLagrangianFieldArrayName");
return LagrangianFieldSelection->GetArrayName(index);
}
int vtkPV398FoamReader::GetLagrangianFieldArrayStatus(const char* name)
int vtkPV4FoamReader::GetLagrangianFieldArrayStatus(const char* name)
{
vtkDebugMacro(<<"GetLagrangianFieldArrayStatus");
return LagrangianFieldSelection->ArrayIsEnabled(name);
}
void vtkPV398FoamReader::SetLagrangianFieldArrayStatus
void vtkPV4FoamReader::SetLagrangianFieldArrayStatus
(
const char* name,
int status
@ -715,7 +715,7 @@ void vtkPV398FoamReader::SetLagrangianFieldArrayStatus
// ----------------------------------------------------------------------
void vtkPV398FoamReader::SelectionModifiedCallback
void vtkPV4FoamReader::SelectionModifiedCallback
(
vtkObject*,
unsigned long,
@ -723,18 +723,18 @@ void vtkPV398FoamReader::SelectionModifiedCallback
void*
)
{
static_cast<vtkPV398FoamReader*>(clientdata)->SelectionModified();
static_cast<vtkPV4FoamReader*>(clientdata)->SelectionModified();
}
void vtkPV398FoamReader::SelectionModified()
void vtkPV4FoamReader::SelectionModified()
{
vtkDebugMacro(<<"SelectionModified");
Modified();
}
int vtkPV398FoamReader::FillOutputPortInformation
int vtkPV4FoamReader::FillOutputPortInformation
(
int port,
vtkInformation* info

View File

@ -22,21 +22,21 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
vtkPV398FoamReader
vtkPV4FoamReader
Description
reads a dataset in OpenFOAM format
vtkPV398blockMeshReader creates an multiblock dataset.
vtkPV4blockMeshReader creates an multiblock dataset.
It uses the OpenFOAM infrastructure (fvMesh, etc) to handle mesh and
field data.
SourceFiles
vtkPV398blockMeshReader.cxx
vtkPV4blockMeshReader.cxx
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398FoamReader_h
#define vtkPV398FoamReader_h
#ifndef vtkPV4FoamReader_h
#define vtkPV4FoamReader_h
// VTK includes
#include "vtkMultiBlockDataSetAlgorithm.h"
@ -50,23 +50,23 @@ class vtkCallbackCommand;
// OpenFOAM forward declarations
namespace Foam
{
class vtkPV398Foam;
class vtkPV4Foam;
}
/*---------------------------------------------------------------------------*\
Class vtkPV398FoamReader Declaration
Class vtkPV4FoamReader Declaration
\*---------------------------------------------------------------------------*/
class vtkPV398FoamReader
class vtkPV4FoamReader
:
public vtkMultiBlockDataSetAlgorithm
{
public:
vtkTypeMacro(vtkPV398FoamReader, vtkMultiBlockDataSetAlgorithm);
vtkTypeMacro(vtkPV4FoamReader, vtkMultiBlockDataSetAlgorithm);
void PrintSelf(ostream&, vtkIndent);
static vtkPV398FoamReader* New();
static vtkPV4FoamReader* New();
// Description:
// Get the current timestep and the timestep range.
@ -184,10 +184,10 @@ public:
protected:
//- Construct null
vtkPV398FoamReader();
vtkPV4FoamReader();
//- Destructor
~vtkPV398FoamReader();
~vtkPV4FoamReader();
//- Return information about mesh, times, etc without loading anything
virtual int RequestInformation
@ -218,10 +218,10 @@ protected:
private:
//- Disallow default bitwise copy construct
vtkPV398FoamReader(const vtkPV398FoamReader&);
vtkPV4FoamReader(const vtkPV4FoamReader&);
//- Disallow default bitwise assignment
void operator=(const vtkPV398FoamReader&);
void operator=(const vtkPV4FoamReader&);
//- Add/remove patch names to/from the view
void updatePatchNamesView(const bool show);
@ -251,7 +251,7 @@ private:
vtkMultiBlockDataSet* output0_;
//BTX
Foam::vtkPV398Foam* foamData_;
Foam::vtkPV4Foam* foamData_;
//ETX
};

View File

@ -0,0 +1,11 @@
vtkPV4Foam.C
vtkPV4FoamFields.C
vtkPV4FoamMesh.C
vtkPV4FoamMeshLagrangian.C
vtkPV4FoamMeshSet.C
vtkPV4FoamMeshVolume.C
vtkPV4FoamMeshZone.C
vtkPV4FoamUpdateInfo.C
vtkPV4FoamUtils.C
LIB = $(FOAM_LIBBIN)/libvtkPV4Foam

View File

@ -4,8 +4,8 @@ EXE_INC = \
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/lagrangian/basic/lnInclude \
-I../../vtkPV398Readers/lnInclude \
-I../PV398FoamReader \
-I../../vtkPV4Readers/lnInclude \
-I../PV4FoamReader \
-I$(ParaView_INCLUDE_DIR) \
$(shell \
test -f $(ParaView_INCLUDE_DIR)/vtkPolyhedron.h && \
@ -17,5 +17,5 @@ LIB_LIBS = \
-lfiniteVolume \
-lgenericPatchFields \
-llagrangian \
-L$(FOAM_LIBBIN) -lvtkPV398Readers \
-L$(FOAM_LIBBIN) -lvtkPV4Readers \
$(GLIBS)

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
InClass
vtkPV398Foam
vtkPV4Foam
\*---------------------------------------------------------------------------*/

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
InClass
vtkPV398Foam
vtkPV4Foam
\*---------------------------------------------------------------------------*/

View File

@ -23,8 +23,8 @@ License
\*---------------------------------------------------------------------------*/
#include "vtkPV398Foam.H"
#include "vtkPV398FoamReader.h"
#include "vtkPV4Foam.H"
#include "vtkPV4FoamReader.h"
// OpenFOAM includes
#include "fvMesh.H"
@ -42,16 +42,16 @@ License
namespace Foam
{
defineTypeNameAndDebug(vtkPV398Foam, 0);
defineTypeNameAndDebug(vtkPV4Foam, 0);
}
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
#include "vtkPV398FoamAddToSelection.H"
#include "vtkPV398FoamUpdateInfoFields.H"
#include "vtkPV4FoamAddToSelection.H"
#include "vtkPV4FoamUpdateInfoFields.H"
void Foam::vtkPV398Foam::resetCounters()
void Foam::vtkPV4Foam::resetCounters()
{
// Reset array range information (ids and sizes)
arrayRangeVolume_.reset();
@ -66,7 +66,7 @@ void Foam::vtkPV398Foam::resetCounters()
}
void Foam::vtkPV398Foam::reduceMemory()
void Foam::vtkPV4Foam::reduceMemory()
{
forAll(regionPolyDecomp_, i)
{
@ -91,7 +91,7 @@ void Foam::vtkPV398Foam::reduceMemory()
}
int Foam::vtkPV398Foam::setTime(int nRequest, const double requestTimes[])
int Foam::vtkPV4Foam::setTime(int nRequest, const double requestTimes[])
{
Time& runTime = dbPtr_();
@ -116,7 +116,7 @@ int Foam::vtkPV398Foam::setTime(int nRequest, const double requestTimes[])
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::setTime(";
Info<< "<beg> Foam::vtkPV4Foam::setTime(";
for (int requestI = 0; requestI < nRequest; ++requestI)
{
if (requestI)
@ -160,7 +160,7 @@ int Foam::vtkPV398Foam::setTime(int nRequest, const double requestTimes[])
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::setTime() - selectedTime="
Info<< "<end> Foam::vtkPV4Foam::setTime() - selectedTime="
<< Times[nearestIndex].name() << " index=" << timeIndex_
<< "/" << Times.size()
<< " meshChanged=" << Switch(meshChanged_)
@ -171,11 +171,11 @@ int Foam::vtkPV398Foam::setTime(int nRequest, const double requestTimes[])
}
void Foam::vtkPV398Foam::updateMeshPartsStatus()
void Foam::vtkPV4Foam::updateMeshPartsStatus()
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::updateMeshPartsStatus" << endl;
Info<< "<beg> Foam::vtkPV4Foam::updateMeshPartsStatus" << endl;
}
vtkDataArraySelection* selection = reader_->GetPartSelection();
@ -212,17 +212,17 @@ void Foam::vtkPV398Foam::updateMeshPartsStatus()
}
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::updateMeshPartsStatus" << endl;
Info<< "<end> Foam::vtkPV4Foam::updateMeshPartsStatus" << endl;
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::vtkPV398Foam::vtkPV398Foam
Foam::vtkPV4Foam::vtkPV4Foam
(
const char* const FileName,
vtkPV398FoamReader* reader
vtkPV4FoamReader* reader
)
:
reader_(reader),
@ -245,7 +245,7 @@ Foam::vtkPV398Foam::vtkPV398Foam
{
if (debug)
{
Info<< "Foam::vtkPV398Foam::vtkPV398Foam - " << FileName << endl;
Info<< "Foam::vtkPV4Foam::vtkPV4Foam - " << FileName << endl;
printMemory();
}
@ -329,11 +329,11 @@ Foam::vtkPV398Foam::vtkPV398Foam
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
Foam::vtkPV398Foam::~vtkPV398Foam()
Foam::vtkPV4Foam::~vtkPV4Foam()
{
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::~vtkPV398Foam" << endl;
Info<< "<end> Foam::vtkPV4Foam::~vtkPV4Foam" << endl;
}
delete meshPtr_;
@ -342,11 +342,11 @@ Foam::vtkPV398Foam::~vtkPV398Foam()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::vtkPV398Foam::updateInfo()
void Foam::vtkPV4Foam::updateInfo()
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::updateInfo"
Info<< "<beg> Foam::vtkPV4Foam::updateInfo"
<< " [meshPtr=" << (meshPtr_ ? "set" : "NULL") << "] timeIndex="
<< timeIndex_ << endl;
}
@ -409,17 +409,17 @@ void Foam::vtkPV398Foam::updateInfo()
{
// just for debug info
getSelectedArrayEntries(partSelection);
Info<< "<end> Foam::vtkPV398Foam::updateInfo" << endl;
Info<< "<end> Foam::vtkPV4Foam::updateInfo" << endl;
}
}
void Foam::vtkPV398Foam::updateFoamMesh()
void Foam::vtkPV4Foam::updateFoamMesh()
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::updateFoamMesh" << endl;
Info<< "<beg> Foam::vtkPV4Foam::updateFoamMesh" << endl;
printMemory();
}
@ -463,13 +463,13 @@ void Foam::vtkPV398Foam::updateFoamMesh()
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::updateFoamMesh" << endl;
Info<< "<end> Foam::vtkPV4Foam::updateFoamMesh" << endl;
printMemory();
}
}
void Foam::vtkPV398Foam::Update
void Foam::vtkPV4Foam::Update
(
vtkMultiBlockDataSet* output,
vtkMultiBlockDataSet* lagrangianOutput
@ -477,7 +477,7 @@ void Foam::vtkPV398Foam::Update
{
if (debug)
{
cout<< "<beg> Foam::vtkPV398Foam::Update - output with "
cout<< "<beg> Foam::vtkPV4Foam::Update - output with "
<< output->GetNumberOfBlocks() << " and "
<< lagrangianOutput->GetNumberOfBlocks() << " blocks\n";
output->Print(cout);
@ -518,7 +518,7 @@ void Foam::vtkPV398Foam::Update
reader_->UpdateProgress(0.7);
}
#ifdef VTKPV398FOAM_DUALPORT
#ifdef VTKPV4FOAM_DUALPORT
// restart port1 at block=0
blockNo = 0;
#endif
@ -540,7 +540,7 @@ void Foam::vtkPV398Foam::Update
}
void Foam::vtkPV398Foam::CleanUp()
void Foam::vtkPV4Foam::CleanUp()
{
// reclaim some memory
reduceMemory();
@ -548,7 +548,7 @@ void Foam::vtkPV398Foam::CleanUp()
}
double* Foam::vtkPV398Foam::findTimes(int& nTimeSteps)
double* Foam::vtkPV4Foam::findTimes(int& nTimeSteps)
{
int nTimes = 0;
double* tsteps = NULL;
@ -621,7 +621,7 @@ double* Foam::vtkPV398Foam::findTimes(int& nTimeSteps)
}
void Foam::vtkPV398Foam::renderPatchNames
void Foam::vtkPV4Foam::renderPatchNames
(
vtkRenderer* renderer,
const bool show
@ -819,7 +819,7 @@ void Foam::vtkPV398Foam::renderPatchNames
}
void Foam::vtkPV398Foam::PrintSelf(ostream& os, vtkIndent indent) const
void Foam::vtkPV4Foam::PrintSelf(ostream& os, vtkIndent indent) const
{
os << indent << "Number of nodes: "
<< (meshPtr_ ? meshPtr_->nPoints() : 0) << "\n";

View File

@ -22,39 +22,39 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::vtkPV398Foam
Foam::vtkPV4Foam
Description
Provides a reader interface for OpenFOAM to VTK interaction.
SourceFiles
vtkPV398Foam.C
vtkPV398Foam.H
vtkPV398FoamFields.C
vtkPV398FoamMesh.C
vtkPV398FoamMeshLagrangian.C
vtkPV398FoamTemplates.C
vtkPV398FoamMeshSet.C
vtkPV398FoamMeshVolume.C
vtkPV398FoamMeshZone.C
vtkPV398FoamFaceField.H
vtkPV398FoamLagrangianFields.H
vtkPV398FoamPatchField.H
vtkPV398FoamPointFields.H
vtkPV398FoamPoints.H
vtkPV398FoamUpdateInfo.C
vtkPV398FoamUpdateInfoFields.H
vtkPV398FoamUtils.C
vtkPV398FoamVolFields.H
vtkPV398FoamAddToSelection.H
vtkPV4Foam.C
vtkPV4Foam.H
vtkPV4FoamFields.C
vtkPV4FoamMesh.C
vtkPV4FoamMeshLagrangian.C
vtkPV4FoamTemplates.C
vtkPV4FoamMeshSet.C
vtkPV4FoamMeshVolume.C
vtkPV4FoamMeshZone.C
vtkPV4FoamFaceField.H
vtkPV4FoamLagrangianFields.H
vtkPV4FoamPatchField.H
vtkPV4FoamPointFields.H
vtkPV4FoamPoints.H
vtkPV4FoamUpdateInfo.C
vtkPV4FoamUpdateInfoFields.H
vtkPV4FoamUtils.C
vtkPV4FoamVolFields.H
vtkPV4FoamAddToSelection.H
// Needed by VTK:
vtkDataArrayTemplateImplicit.txx
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398Foam_H
#define vtkPV398Foam_H
#ifndef vtkPV4Foam_H
#define vtkPV4Foam_H
// do not include legacy strstream headers
#ifndef VTK_EXCLUDE_STRSTREAM_HEADERS
@ -69,14 +69,14 @@ SourceFiles
#include "PrimitivePatchInterpolation.H"
#include "volPointInterpolation.H"
#undef VTKPV398FOAM_DUALPORT
#undef VTKPV4FOAM_DUALPORT
// * * * * * * * * * * * * * Forward Declarations * * * * * * * * * * * * * //
class vtkDataArraySelection;
class vtkDataSet;
class vtkPoints;
class vtkPV398FoamReader;
class vtkPV4FoamReader;
class vtkRenderer;
class vtkTextActor;
class vtkMultiBlockDataSet;
@ -102,10 +102,10 @@ template<class Type> class IOField;
template<class Type> class List;
/*---------------------------------------------------------------------------*\
Class vtkPV398Foam Declaration
Class vtkPV4Foam Declaration
\*---------------------------------------------------------------------------*/
class vtkPV398Foam
class vtkPV4Foam
{
// Private classes
@ -246,8 +246,8 @@ class vtkPV398Foam
// Private Data
//- Access to the controlling vtkPV398FoamReader
vtkPV398FoamReader* reader_;
//- Access to the controlling vtkPV4FoamReader
vtkPV4FoamReader* reader_;
//- OpenFOAM time control
autoPtr<Time> dbPtr_;
@ -652,31 +652,31 @@ class vtkPV398Foam
//- Disallow default bitwise copy construct
vtkPV398Foam(const vtkPV398Foam&);
vtkPV4Foam(const vtkPV4Foam&);
//- Disallow default bitwise assignment
void operator=(const vtkPV398Foam&);
void operator=(const vtkPV4Foam&);
public:
//- Static data members
ClassName("vtkPV398Foam");
ClassName("vtkPV4Foam");
// Constructors
//- Construct from components
vtkPV398Foam
vtkPV4Foam
(
const char* const FileName,
vtkPV398FoamReader* reader
vtkPV4FoamReader* reader
);
//- Destructor
~vtkPV398Foam();
~vtkPV4Foam();
// Member Functions
@ -731,7 +731,7 @@ public:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#ifdef NoRepository
# include "vtkPV398FoamTemplates.C"
# include "vtkPV4FoamTemplates.C"
#endif
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -23,8 +23,8 @@ License
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398FoamAddToSelection_H
#define vtkPV398FoamAddToSelection_H
#ifndef vtkPV4FoamAddToSelection_H
#define vtkPV4FoamAddToSelection_H
// OpenFOAM includes
#include "IOobjectList.H"
@ -36,7 +36,7 @@ License
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
template<class Type>
Foam::label Foam::vtkPV398Foam::addToSelection
Foam::label Foam::vtkPV4Foam::addToSelection
(
vtkDataArraySelection *select,
const IOobjectList& objectLst,

View File

@ -22,12 +22,12 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
InClass
vtkPV398Foam
vtkPV4Foam
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398FoamFaceField_H
#define vtkPV398FoamFaceField_H
#ifndef vtkPV4FoamFaceField_H
#define vtkPV4FoamFaceField_H
// VTK includes
#include "vtkCellData.h"
@ -40,7 +40,7 @@ InClass
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
template<class Type>
void Foam::vtkPV398Foam::convertFaceField
void Foam::vtkPV4Foam::convertFaceField
(
const GeometricField<Type, fvPatchField, volMesh>& tf,
vtkMultiBlockDataSet* output,

View File

@ -23,11 +23,11 @@ License
\*---------------------------------------------------------------------------*/
#include "vtkPV398Foam.H"
#include "vtkPV4Foam.H"
// OpenFOAM includes
#include "IOobjectList.H"
#include "vtkPV398FoamReader.h"
#include "vtkPV4FoamReader.h"
// VTK includes
#include "vtkDataArraySelection.h"
@ -36,12 +36,12 @@ License
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
#include "vtkPV398FoamVolFields.H"
#include "vtkPV398FoamPointFields.H"
#include "vtkPV398FoamLagrangianFields.H"
#include "vtkPV4FoamVolFields.H"
#include "vtkPV4FoamPointFields.H"
#include "vtkPV4FoamLagrangianFields.H"
void Foam::vtkPV398Foam::pruneObjectList
void Foam::vtkPV4Foam::pruneObjectList
(
IOobjectList& objects,
const wordHashSet& selected
@ -64,7 +64,7 @@ void Foam::vtkPV398Foam::pruneObjectList
}
void Foam::vtkPV398Foam::convertVolFields
void Foam::vtkPV4Foam::convertVolFields
(
vtkMultiBlockDataSet* output
)
@ -93,7 +93,7 @@ void Foam::vtkPV398Foam::convertVolFields
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertVolFields" << nl
Info<< "<beg> Foam::vtkPV4Foam::convertVolFields" << nl
<< "converting OpenFOAM volume fields" << endl;
forAllConstIter(IOobjectList, objects, iter)
{
@ -145,13 +145,13 @@ void Foam::vtkPV398Foam::convertVolFields
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertVolFields" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertVolFields" << endl;
printMemory();
}
}
void Foam::vtkPV398Foam::convertPointFields
void Foam::vtkPV4Foam::convertPointFields
(
vtkMultiBlockDataSet* output
)
@ -184,7 +184,7 @@ void Foam::vtkPV398Foam::convertPointFields
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertPointFields" << nl
Info<< "<beg> Foam::vtkPV4Foam::convertPointFields" << nl
<< "converting OpenFOAM volume fields -> point fields" << endl;
forAllConstIter(IOobjectList, objects, iter)
{
@ -221,13 +221,13 @@ void Foam::vtkPV398Foam::convertPointFields
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertPointFields" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertPointFields" << endl;
printMemory();
}
}
void Foam::vtkPV398Foam::convertLagrangianFields
void Foam::vtkPV4Foam::convertLagrangianFields
(
vtkMultiBlockDataSet* output
)
@ -247,7 +247,7 @@ void Foam::vtkPV398Foam::convertLagrangianFields
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertLagrangianFields" << endl;
Info<< "<beg> Foam::vtkPV4Foam::convertLagrangianFields" << endl;
printMemory();
}
@ -316,7 +316,7 @@ void Foam::vtkPV398Foam::convertLagrangianFields
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertLagrangianFields" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertLagrangianFields" << endl;
printMemory();
}
}

View File

@ -22,12 +22,12 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
InClass
vtkPV398Foam
vtkPV4Foam
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398FoamLagrangianFields_H
#define vtkPV398FoamLagrangianFields_H
#ifndef vtkPV4FoamLagrangianFields_H
#define vtkPV4FoamLagrangianFields_H
#include "Cloud.H"
@ -36,7 +36,7 @@ InClass
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
template<class Type>
void Foam::vtkPV398Foam::convertLagrangianFields
void Foam::vtkPV4Foam::convertLagrangianFields
(
const IOobjectList& objects,
vtkMultiBlockDataSet* output,
@ -58,7 +58,7 @@ void Foam::vtkPV398Foam::convertLagrangianFields
template<class Type>
void Foam::vtkPV398Foam::convertLagrangianField
void Foam::vtkPV4Foam::convertLagrangianField
(
const IOField<Type>& tf,
vtkMultiBlockDataSet* output,

View File

@ -23,14 +23,14 @@ License
\*---------------------------------------------------------------------------*/
#include "vtkPV398Foam.H"
#include "vtkPV4Foam.H"
// OpenFOAM includes
#include "cellSet.H"
#include "faceSet.H"
#include "pointSet.H"
#include "fvMeshSubset.H"
#include "vtkPV398FoamReader.h"
#include "vtkPV4FoamReader.h"
#include "uindirectPrimitivePatch.H"
// VTK includes
@ -41,7 +41,7 @@ License
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::vtkPV398Foam::convertMeshVolume
void Foam::vtkPV4Foam::convertMeshVolume
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -57,7 +57,7 @@ void Foam::vtkPV398Foam::convertMeshVolume
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertMeshVolume" << endl;
Info<< "<beg> Foam::vtkPV4Foam::convertMeshVolume" << endl;
printMemory();
}
@ -95,13 +95,13 @@ void Foam::vtkPV398Foam::convertMeshVolume
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertMeshVolume" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertMeshVolume" << endl;
printMemory();
}
}
void Foam::vtkPV398Foam::convertMeshLagrangian
void Foam::vtkPV4Foam::convertMeshLagrangian
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -114,7 +114,7 @@ void Foam::vtkPV398Foam::convertMeshLagrangian
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertMeshLagrangian" << endl;
Info<< "<beg> Foam::vtkPV4Foam::convertMeshLagrangian" << endl;
printMemory();
}
@ -146,13 +146,13 @@ void Foam::vtkPV398Foam::convertMeshLagrangian
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertMeshLagrangian" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertMeshLagrangian" << endl;
printMemory();
}
}
void Foam::vtkPV398Foam::convertMeshPatches
void Foam::vtkPV4Foam::convertMeshPatches
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -166,7 +166,7 @@ void Foam::vtkPV398Foam::convertMeshPatches
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertMeshPatches" << endl;
Info<< "<beg> Foam::vtkPV4Foam::convertMeshPatches" << endl;
printMemory();
}
@ -235,13 +235,13 @@ void Foam::vtkPV398Foam::convertMeshPatches
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertMeshPatches" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertMeshPatches" << endl;
printMemory();
}
}
void Foam::vtkPV398Foam::convertMeshCellZones
void Foam::vtkPV4Foam::convertMeshCellZones
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -262,7 +262,7 @@ void Foam::vtkPV398Foam::convertMeshCellZones
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertMeshCellZones" << endl;
Info<< "<beg> Foam::vtkPV4Foam::convertMeshCellZones" << endl;
printMemory();
}
@ -324,13 +324,13 @@ void Foam::vtkPV398Foam::convertMeshCellZones
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertMeshCellZones" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertMeshCellZones" << endl;
printMemory();
}
}
void Foam::vtkPV398Foam::convertMeshCellSets
void Foam::vtkPV4Foam::convertMeshCellSets
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -346,7 +346,7 @@ void Foam::vtkPV398Foam::convertMeshCellSets
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertMeshCellSets" << endl;
Info<< "<beg> Foam::vtkPV4Foam::convertMeshCellSets" << endl;
printMemory();
}
@ -406,13 +406,13 @@ void Foam::vtkPV398Foam::convertMeshCellSets
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertMeshCellSets" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertMeshCellSets" << endl;
printMemory();
}
}
void Foam::vtkPV398Foam::convertMeshFaceZones
void Foam::vtkPV4Foam::convertMeshFaceZones
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -430,7 +430,7 @@ void Foam::vtkPV398Foam::convertMeshFaceZones
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertMeshFaceZones" << endl;
Info<< "<beg> Foam::vtkPV4Foam::convertMeshFaceZones" << endl;
printMemory();
}
@ -470,13 +470,13 @@ void Foam::vtkPV398Foam::convertMeshFaceZones
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertMeshFaceZones" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertMeshFaceZones" << endl;
printMemory();
}
}
void Foam::vtkPV398Foam::convertMeshFaceSets
void Foam::vtkPV4Foam::convertMeshFaceSets
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -489,7 +489,7 @@ void Foam::vtkPV398Foam::convertMeshFaceSets
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertMeshFaceSets" << endl;
Info<< "<beg> Foam::vtkPV4Foam::convertMeshFaceSets" << endl;
printMemory();
}
@ -527,13 +527,13 @@ void Foam::vtkPV398Foam::convertMeshFaceSets
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertMeshFaceSets" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertMeshFaceSets" << endl;
printMemory();
}
}
void Foam::vtkPV398Foam::convertMeshPointZones
void Foam::vtkPV4Foam::convertMeshPointZones
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -546,7 +546,7 @@ void Foam::vtkPV398Foam::convertMeshPointZones
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertMeshPointZones" << endl;
Info<< "<beg> Foam::vtkPV4Foam::convertMeshPointZones" << endl;
printMemory();
}
@ -582,14 +582,14 @@ void Foam::vtkPV398Foam::convertMeshPointZones
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertMeshPointZones" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertMeshPointZones" << endl;
printMemory();
}
}
void Foam::vtkPV398Foam::convertMeshPointSets
void Foam::vtkPV4Foam::convertMeshPointSets
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -602,7 +602,7 @@ void Foam::vtkPV398Foam::convertMeshPointSets
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::convertMeshPointSets" << endl;
Info<< "<beg> Foam::vtkPV4Foam::convertMeshPointSets" << endl;
printMemory();
}
@ -640,7 +640,7 @@ void Foam::vtkPV398Foam::convertMeshPointSets
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::convertMeshPointSets" << endl;
Info<< "<end> Foam::vtkPV4Foam::convertMeshPointSets" << endl;
printMemory();
}
}

View File

@ -23,7 +23,7 @@ License
\*---------------------------------------------------------------------------*/
#include "vtkPV398Foam.H"
#include "vtkPV4Foam.H"
// OpenFOAM includes
#include "Cloud.H"
@ -39,7 +39,7 @@ License
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
vtkPolyData* Foam::vtkPV398Foam::lagrangianVTKMesh
vtkPolyData* Foam::vtkPV4Foam::lagrangianVTKMesh
(
const fvMesh& mesh,
const word& cloudName
@ -49,7 +49,7 @@ vtkPolyData* Foam::vtkPV398Foam::lagrangianVTKMesh
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::lagrangianVTKMesh - timePath "
Info<< "<beg> Foam::vtkPV4Foam::lagrangianVTKMesh - timePath "
<< mesh.time().timePath()/cloud::prefix/cloudName << endl;
printMemory();
}
@ -98,7 +98,7 @@ vtkPolyData* Foam::vtkPV398Foam::lagrangianVTKMesh
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::lagrangianVTKMesh" << endl;
Info<< "<end> Foam::vtkPV4Foam::lagrangianVTKMesh" << endl;
printMemory();
}

View File

@ -23,7 +23,7 @@ License
\*---------------------------------------------------------------------------*/
#include "vtkPV398Foam.H"
#include "vtkPV4Foam.H"
// OpenFOAM includes
#include "faceSet.H"
@ -37,7 +37,7 @@ License
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
vtkPolyData* Foam::vtkPV398Foam::faceSetVTKMesh
vtkPolyData* Foam::vtkPV4Foam::faceSetVTKMesh
(
const fvMesh& mesh,
const faceSet& fSet
@ -47,7 +47,7 @@ vtkPolyData* Foam::vtkPV398Foam::faceSetVTKMesh
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::faceSetVTKMesh" << endl;
Info<< "<beg> Foam::vtkPV4Foam::faceSetVTKMesh" << endl;
printMemory();
}
@ -100,7 +100,7 @@ vtkPolyData* Foam::vtkPV398Foam::faceSetVTKMesh
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::faceSetVTKMesh" << endl;
Info<< "<end> Foam::vtkPV4Foam::faceSetVTKMesh" << endl;
printMemory();
}
@ -108,7 +108,7 @@ vtkPolyData* Foam::vtkPV398Foam::faceSetVTKMesh
}
vtkPolyData* Foam::vtkPV398Foam::pointSetVTKMesh
vtkPolyData* Foam::vtkPV4Foam::pointSetVTKMesh
(
const fvMesh& mesh,
const pointSet& pSet
@ -118,7 +118,7 @@ vtkPolyData* Foam::vtkPV398Foam::pointSetVTKMesh
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::pointSetVTKMesh" << endl;
Info<< "<beg> Foam::vtkPV4Foam::pointSetVTKMesh" << endl;
printMemory();
}
@ -137,7 +137,7 @@ vtkPolyData* Foam::vtkPV398Foam::pointSetVTKMesh
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::pointSetVTKMesh" << endl;
Info<< "<end> Foam::vtkPV4Foam::pointSetVTKMesh" << endl;
printMemory();
}

View File

@ -23,8 +23,8 @@ License
\*---------------------------------------------------------------------------*/
#include "vtkPV398Foam.H"
#include "vtkPV398FoamReader.h"
#include "vtkPV4Foam.H"
#include "vtkPV4FoamReader.h"
// OpenFOAM includes
#include "fvMesh.H"
@ -40,7 +40,7 @@ License
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
vtkUnstructuredGrid* Foam::vtkPV398Foam::volumeVTKMesh
vtkUnstructuredGrid* Foam::vtkPV4Foam::volumeVTKMesh
(
const fvMesh& mesh,
polyDecomp& decompInfo
@ -57,7 +57,7 @@ vtkUnstructuredGrid* Foam::vtkPV398Foam::volumeVTKMesh
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::volumeVTKMesh" << endl;
Info<< "<beg> Foam::vtkPV4Foam::volumeVTKMesh" << endl;
printMemory();
}
@ -470,7 +470,7 @@ vtkUnstructuredGrid* Foam::vtkPV398Foam::volumeVTKMesh
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::volumeVTKMesh" << endl;
Info<< "<end> Foam::vtkPV4Foam::volumeVTKMesh" << endl;
printMemory();
}

View File

@ -23,7 +23,7 @@ License
\*---------------------------------------------------------------------------*/
#include "vtkPV398Foam.H"
#include "vtkPV4Foam.H"
// OpenFOAM includes
#include "vtkOpenFOAMPoints.H"
@ -35,7 +35,7 @@ License
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
vtkPolyData* Foam::vtkPV398Foam::pointZoneVTKMesh
vtkPolyData* Foam::vtkPV4Foam::pointZoneVTKMesh
(
const fvMesh& mesh,
const labelList& pointLabels
@ -45,7 +45,7 @@ vtkPolyData* Foam::vtkPV398Foam::pointZoneVTKMesh
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::pointZoneVTKMesh" << endl;
Info<< "<beg> Foam::vtkPV4Foam::pointZoneVTKMesh" << endl;
printMemory();
}
@ -64,7 +64,7 @@ vtkPolyData* Foam::vtkPV398Foam::pointZoneVTKMesh
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::pointZoneVTKMesh" << endl;
Info<< "<beg> Foam::vtkPV4Foam::pointZoneVTKMesh" << endl;
printMemory();
}

View File

@ -22,12 +22,12 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
InClass
vtkPV398Foam
vtkPV4Foam
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398FoamPatchField_H
#define vtkPV398FoamPatchField_H
#ifndef vtkPV4FoamPatchField_H
#define vtkPV4FoamPatchField_H
// VTK includes
#include "vtkCellData.h"
@ -41,7 +41,7 @@ InClass
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
template<class Type>
void Foam::vtkPV398Foam::convertPatchField
void Foam::vtkPV4Foam::convertPatchField
(
const word& name,
const Field<Type>& ptf,
@ -83,7 +83,7 @@ void Foam::vtkPV398Foam::convertPatchField
// as above, but with PointData()
template<class Type>
void Foam::vtkPV398Foam::convertPatchPointField
void Foam::vtkPV4Foam::convertPatchPointField
(
const word& name,
const Field<Type>& pptf,

View File

@ -22,12 +22,12 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
InClass
vtkPV398Foam
vtkPV4Foam
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398FoamPointFields_H
#define vtkPV398FoamPointFields_H
#ifndef vtkPV4FoamPointFields_H
#define vtkPV4FoamPointFields_H
// OpenFOAM includes
#include "interpolatePointToCell.H"
@ -37,7 +37,7 @@ InClass
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
template<class Type>
void Foam::vtkPV398Foam::convertPointFields
void Foam::vtkPV4Foam::convertPointFields
(
const fvMesh& mesh,
const pointMesh& pMesh,
@ -62,7 +62,7 @@ void Foam::vtkPV398Foam::convertPointFields
if (debug)
{
Info<< "Foam::vtkPV398Foam::convertPointFields : "
Info<< "Foam::vtkPV4Foam::convertPointFields : "
<< fieldName << endl;
}
@ -170,7 +170,7 @@ void Foam::vtkPV398Foam::convertPointFields
template<class Type>
void Foam::vtkPV398Foam::convertPointFieldBlock
void Foam::vtkPV4Foam::convertPointFieldBlock
(
const GeometricField<Type, pointPatchField, pointMesh>& ptf,
vtkMultiBlockDataSet* output,
@ -199,7 +199,7 @@ void Foam::vtkPV398Foam::convertPointFieldBlock
template<class Type>
void Foam::vtkPV398Foam::convertPointField
void Foam::vtkPV4Foam::convertPointField
(
const GeometricField<Type, pointPatchField, pointMesh>& ptf,
const GeometricField<Type, fvPatchField, volMesh>& tf,

View File

@ -23,7 +23,7 @@ License
\*---------------------------------------------------------------------------*/
#include "vtkPV398Foam.H"
#include "vtkPV4Foam.H"
// OpenFOAM includes
#include "polyPatch.H"
@ -38,7 +38,7 @@ License
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class PatchType>
vtkPolyData* Foam::vtkPV398Foam::patchVTKMesh
vtkPolyData* Foam::vtkPV4Foam::patchVTKMesh
(
const word& name,
const PatchType& p
@ -48,7 +48,7 @@ vtkPolyData* Foam::vtkPV398Foam::patchVTKMesh
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::patchVTKMesh - " << name << endl;
Info<< "<beg> Foam::vtkPV4Foam::patchVTKMesh - " << name << endl;
printMemory();
}
@ -88,7 +88,7 @@ vtkPolyData* Foam::vtkPV398Foam::patchVTKMesh
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::patchVTKMesh - " << name << endl;
Info<< "<end> Foam::vtkPV4Foam::patchVTKMesh - " << name << endl;
printMemory();
}

View File

@ -23,7 +23,7 @@ License
\*---------------------------------------------------------------------------*/
#include "vtkPV398Foam.H"
#include "vtkPV4Foam.H"
// OpenFOAM includes
#include "cellSet.H"
@ -34,11 +34,11 @@ License
#include "polyBoundaryMeshEntries.H"
#include "entry.H"
#include "Cloud.H"
#include "vtkPV398FoamReader.h"
#include "vtkPV4FoamReader.h"
// local headers
#include "vtkPV398FoamAddToSelection.H"
#include "vtkPV398FoamUpdateInfoFields.H"
#include "vtkPV4FoamAddToSelection.H"
#include "vtkPV4FoamUpdateInfoFields.H"
// VTK includes
#include "vtkDataArraySelection.h"
@ -82,7 +82,7 @@ public:
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
template<class ZoneType>
Foam::wordList Foam::vtkPV398Foam::getZoneNames
Foam::wordList Foam::vtkPV4Foam::getZoneNames
(
const ZoneMesh<ZoneType, polyMesh>& zmesh
) const
@ -103,7 +103,7 @@ Foam::wordList Foam::vtkPV398Foam::getZoneNames
}
Foam::wordList Foam::vtkPV398Foam::getZoneNames(const word& zoneType) const
Foam::wordList Foam::vtkPV4Foam::getZoneNames(const word& zoneType) const
{
wordList names;
@ -139,14 +139,14 @@ Foam::wordList Foam::vtkPV398Foam::getZoneNames(const word& zoneType) const
}
void Foam::vtkPV398Foam::updateInfoInternalMesh
void Foam::vtkPV4Foam::updateInfoInternalMesh
(
vtkDataArraySelection* arraySelection
)
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::updateInfoInternalMesh" << endl;
Info<< "<beg> Foam::vtkPV4Foam::updateInfoInternalMesh" << endl;
}
// Determine mesh parts (internalMesh, patches...)
@ -163,19 +163,19 @@ void Foam::vtkPV398Foam::updateInfoInternalMesh
// just for debug info
getSelectedArrayEntries(arraySelection);
Info<< "<end> Foam::vtkPV398Foam::updateInfoInternalMesh" << endl;
Info<< "<end> Foam::vtkPV4Foam::updateInfoInternalMesh" << endl;
}
}
void Foam::vtkPV398Foam::updateInfoLagrangian
void Foam::vtkPV4Foam::updateInfoLagrangian
(
vtkDataArraySelection* arraySelection
)
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::updateInfoLagrangian" << nl
Info<< "<beg> Foam::vtkPV4Foam::updateInfoLagrangian" << nl
<< " " << dbPtr_->timePath()/cloud::prefix << endl;
}
@ -214,12 +214,12 @@ void Foam::vtkPV398Foam::updateInfoLagrangian
// just for debug info
getSelectedArrayEntries(arraySelection);
Info<< "<end> Foam::vtkPV398Foam::updateInfoLagrangian" << endl;
Info<< "<end> Foam::vtkPV4Foam::updateInfoLagrangian" << endl;
}
}
void Foam::vtkPV398Foam::updateInfoPatches
void Foam::vtkPV4Foam::updateInfoPatches
(
vtkDataArraySelection* arraySelection,
stringList& enabledEntries
@ -227,7 +227,7 @@ void Foam::vtkPV398Foam::updateInfoPatches
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::updateInfoPatches"
Info<< "<beg> Foam::vtkPV4Foam::updateInfoPatches"
<< " [meshPtr=" << (meshPtr_ ? "set" : "NULL") << "]" << endl;
}
@ -458,12 +458,12 @@ void Foam::vtkPV398Foam::updateInfoPatches
// just for debug info
getSelectedArrayEntries(arraySelection);
Info<< "<end> Foam::vtkPV398Foam::updateInfoPatches" << endl;
Info<< "<end> Foam::vtkPV4Foam::updateInfoPatches" << endl;
}
}
void Foam::vtkPV398Foam::updateInfoZones
void Foam::vtkPV4Foam::updateInfoZones
(
vtkDataArraySelection* arraySelection
)
@ -475,7 +475,7 @@ void Foam::vtkPV398Foam::updateInfoZones
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::updateInfoZones"
Info<< "<beg> Foam::vtkPV4Foam::updateInfoZones"
<< " [meshPtr=" << (meshPtr_ ? "set" : "NULL") << "]" << endl;
}
@ -554,12 +554,12 @@ void Foam::vtkPV398Foam::updateInfoZones
// just for debug info
getSelectedArrayEntries(arraySelection);
Info<< "<end> Foam::vtkPV398Foam::updateInfoZones" << endl;
Info<< "<end> Foam::vtkPV4Foam::updateInfoZones" << endl;
}
}
void Foam::vtkPV398Foam::updateInfoSets
void Foam::vtkPV4Foam::updateInfoSets
(
vtkDataArraySelection* arraySelection
)
@ -571,7 +571,7 @@ void Foam::vtkPV398Foam::updateInfoSets
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::updateInfoSets" << endl;
Info<< "<beg> Foam::vtkPV4Foam::updateInfoSets" << endl;
}
// Add names of sets. Search for last time directory with a sets
@ -596,7 +596,7 @@ void Foam::vtkPV398Foam::updateInfoSets
if (debug)
{
Info<< " Foam::vtkPV398Foam::updateInfoSets read "
Info<< " Foam::vtkPV4Foam::updateInfoSets read "
<< objects.names() << " from " << setsInstance << endl;
}
@ -630,16 +630,16 @@ void Foam::vtkPV398Foam::updateInfoSets
// just for debug info
getSelectedArrayEntries(arraySelection);
Info<< "<end> Foam::vtkPV398Foam::updateInfoSets" << endl;
Info<< "<end> Foam::vtkPV4Foam::updateInfoSets" << endl;
}
}
void Foam::vtkPV398Foam::updateInfoLagrangianFields()
void Foam::vtkPV4Foam::updateInfoLagrangianFields()
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::updateInfoLagrangianFields"
Info<< "<beg> Foam::vtkPV4Foam::updateInfoLagrangianFields"
<< endl;
}
@ -715,7 +715,7 @@ void Foam::vtkPV398Foam::updateInfoLagrangianFields()
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::updateInfoLagrangianFields - "
Info<< "<end> Foam::vtkPV4Foam::updateInfoLagrangianFields - "
<< "lagrangian objects.size() = " << objects.size() << endl;
}
}

View File

@ -22,24 +22,24 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
InClass
vtkPV398Foam
vtkPV4Foam
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398FoamUpdateInfoFields_H
#define vtkPV398FoamUpdateInfoFields_H
#ifndef vtkPV4FoamUpdateInfoFields_H
#define vtkPV4FoamUpdateInfoFields_H
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
template<template<class> class patchType, class meshType>
void Foam::vtkPV398Foam::updateInfoFields
void Foam::vtkPV4Foam::updateInfoFields
(
vtkDataArraySelection* select
)
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398Foam::updateInfoFields <"
Info<< "<beg> Foam::vtkPV4Foam::updateInfoFields <"
<< meshType::Mesh::typeName
<< "> [meshPtr=" << (meshPtr_ ? "set" : "NULL") << "]"
<< endl;
@ -104,7 +104,7 @@ void Foam::vtkPV398Foam::updateInfoFields
if (debug)
{
Info<< "<end> Foam::vtkPV398Foam::updateInfoFields" << endl;
Info<< "<end> Foam::vtkPV4Foam::updateInfoFields" << endl;
}
}

View File

@ -26,8 +26,8 @@ Description
\*---------------------------------------------------------------------------*/
#include "vtkPV398Foam.H"
#include "vtkPV398FoamReader.h"
#include "vtkPV4Foam.H"
#include "vtkPV4FoamReader.h"
// OpenFOAM includes
#include "fvMesh.H"
@ -72,7 +72,7 @@ namespace Foam
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
void Foam::vtkPV398Foam::AddToBlock
void Foam::vtkPV4Foam::AddToBlock
(
vtkMultiBlockDataSet* output,
vtkDataSet* dataset,
@ -90,7 +90,7 @@ void Foam::vtkPV398Foam::AddToBlock
{
if (blockDO)
{
FatalErrorIn("Foam::vtkPV398Foam::AddToBlock")
FatalErrorIn("Foam::vtkPV4Foam::AddToBlock")
<< "Block already has a vtkDataSet assigned to it"
<< endl;
return;
@ -132,7 +132,7 @@ void Foam::vtkPV398Foam::AddToBlock
}
vtkDataSet* Foam::vtkPV398Foam::GetDataSetFromBlock
vtkDataSet* Foam::vtkPV4Foam::GetDataSetFromBlock
(
vtkMultiBlockDataSet* output,
const arrayRange& range,
@ -154,7 +154,7 @@ vtkDataSet* Foam::vtkPV398Foam::GetDataSetFromBlock
// ununsed at the moment
Foam::label Foam::vtkPV398Foam::GetNumberOfDataSets
Foam::label Foam::vtkPV4Foam::GetNumberOfDataSets
(
vtkMultiBlockDataSet* output,
const arrayRange& range
@ -173,13 +173,13 @@ Foam::label Foam::vtkPV398Foam::GetNumberOfDataSets
}
Foam::word Foam::vtkPV398Foam::getPartName(const int partId)
Foam::word Foam::vtkPV4Foam::getPartName(const int partId)
{
return getFirstWord(reader_->GetPartArrayName(partId));
}
Foam::wordHashSet Foam::vtkPV398Foam::getSelected
Foam::wordHashSet Foam::vtkPV4Foam::getSelected
(
vtkDataArraySelection* select
)
@ -199,7 +199,7 @@ Foam::wordHashSet Foam::vtkPV398Foam::getSelected
}
Foam::wordHashSet Foam::vtkPV398Foam::getSelected
Foam::wordHashSet Foam::vtkPV4Foam::getSelected
(
vtkDataArraySelection* select,
const arrayRange& range
@ -220,7 +220,7 @@ Foam::wordHashSet Foam::vtkPV398Foam::getSelected
}
Foam::stringList Foam::vtkPV398Foam::getSelectedArrayEntries
Foam::stringList Foam::vtkPV4Foam::getSelectedArrayEntries
(
vtkDataArraySelection* select
)
@ -259,7 +259,7 @@ Foam::stringList Foam::vtkPV398Foam::getSelectedArrayEntries
}
Foam::stringList Foam::vtkPV398Foam::getSelectedArrayEntries
Foam::stringList Foam::vtkPV4Foam::getSelectedArrayEntries
(
vtkDataArraySelection* select,
const arrayRange& range
@ -298,7 +298,7 @@ Foam::stringList Foam::vtkPV398Foam::getSelectedArrayEntries
}
void Foam::vtkPV398Foam::setSelectedArrayEntries
void Foam::vtkPV4Foam::setSelectedArrayEntries
(
vtkDataArraySelection* select,
const stringList& selections
@ -326,7 +326,7 @@ void Foam::vtkPV398Foam::setSelectedArrayEntries
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::vtkPV398Foam::printMemory()
void Foam::vtkPV4Foam::printMemory()
{
memInfo mem;

View File

@ -22,12 +22,12 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
InClass
vtkPV398Foam
vtkPV4Foam
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398FoamVolFields_H
#define vtkPV398FoamVolFields_H
#ifndef vtkPV4FoamVolFields_H
#define vtkPV4FoamVolFields_H
// OpenFOAM includes
#include "emptyFvPatchField.H"
@ -35,15 +35,15 @@ InClass
#include "faceSet.H"
#include "volPointInterpolation.H"
#include "vtkPV398FoamFaceField.H"
#include "vtkPV398FoamPatchField.H"
#include "vtkPV4FoamFaceField.H"
#include "vtkPV4FoamPatchField.H"
#include "vtkOpenFOAMTupleRemap.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
template<class Type>
void Foam::vtkPV398Foam::convertVolFields
void Foam::vtkPV4Foam::convertVolFields
(
const fvMesh& mesh,
const PtrList<PrimitivePatchInterpolation<primitivePatch> >& ppInterpList,
@ -281,7 +281,7 @@ void Foam::vtkPV398Foam::convertVolFields
template<class Type>
void Foam::vtkPV398Foam::convertVolFieldBlock
void Foam::vtkPV4Foam::convertVolFieldBlock
(
const GeometricField<Type, fvPatchField, volMesh>& tf,
autoPtr<GeometricField<Type, pointPatchField, pointMesh> >& ptfPtr,
@ -323,7 +323,7 @@ void Foam::vtkPV398Foam::convertVolFieldBlock
template<class Type>
void Foam::vtkPV398Foam::convertVolField
void Foam::vtkPV4Foam::convertVolField
(
const GeometricField<Type, fvPatchField, volMesh>& tf,
vtkMultiBlockDataSet* output,

View File

@ -3,9 +3,9 @@ cd ${0%/*} || exit 1 # run from this directory
set -x
# deal with client/server vs combined plugins
rm -f $FOAM_LIBBIN/libPV398blockMeshReader* 2>/dev/null
rm -f $FOAM_LIBBIN/libPV4blockMeshReader* 2>/dev/null
rm -rf PV398blockMeshReader/Make
wclean libso vtkPV398blockMesh
rm -rf PV4blockMeshReader/Make
wclean libso vtkPV4blockMesh
# ----------------------------------------------------------------- end-of-file

View File

@ -4,9 +4,9 @@ set -x
if [ -d "$ParaView_DIR" -a -r "$ParaView_DIR" ]
then
wmake libso vtkPV398blockMesh
wmake libso vtkPV4blockMesh
(
cd PV398blockMeshReader
cd PV4blockMeshReader
mkdir -p Make/$WM_OPTIONS > /dev/null 2>&1
cd Make/$WM_OPTIONS
cmake ../..

View File

@ -21,7 +21,7 @@ INCLUDE_DIRECTORIES(
$ENV{WM_PROJECT_DIR}/src/OpenFOAM/lnInclude
$ENV{WM_PROJECT_DIR}/src/OSspecific/$ENV{WM_OSTYPE}/lnInclude
$ENV{WM_PROJECT_DIR}/src/meshing/blockMesh/lnInclude
${PROJECT_SOURCE_DIR}/../vtkPV398blockMesh
${PROJECT_SOURCE_DIR}/../vtkPV4blockMesh
)
ADD_DEFINITIONS(
@ -40,47 +40,47 @@ SET(
#
# Extend the auto-generated panel
QT4_WRAP_CPP(MOC_SRCS pqPV398blockMeshReaderPanel.h)
QT4_WRAP_CPP(MOC_SRCS pqPV4blockMeshReaderPanel.h)
ADD_PARAVIEW_OBJECT_PANEL(IFACES IFACE_SRCS
CLASS_NAME pqPV398blockMeshReaderPanel
XML_NAME PV398blockMeshReader # name of SourceProxy in *SM.xml
CLASS_NAME pqPV4blockMeshReaderPanel
XML_NAME PV4blockMeshReader # name of SourceProxy in *SM.xml
XML_GROUP sources
)
ADD_PARAVIEW_PLUGIN(
PV398blockMeshReader_SM "1.0"
SERVER_MANAGER_XML PV398blockMeshReader_SM.xml
SERVER_MANAGER_SOURCES vtkPV398blockMeshReader.cxx
PV4blockMeshReader_SM "1.0"
SERVER_MANAGER_XML PV4blockMeshReader_SM.xml
SERVER_MANAGER_SOURCES vtkPV4blockMeshReader.cxx
GUI_INTERFACES ${IFACES}
GUI_SOURCES pqPV398blockMeshReaderPanel.cxx
GUI_SOURCES pqPV4blockMeshReaderPanel.cxx
${MOC_SRCS} ${UI_SRCS} ${IFACE_SRCS}
GUI_RESOURCE_FILES PV398blockMeshReader.xml
GUI_RESOURCE_FILES PV4blockMeshReader.xml
)
# #
# # Define the server-side portion of the reader plugin
# #
# ADD_PARAVIEW_PLUGIN(PV398blockMeshReader_SM "1.0"
# SERVER_MANAGER_XML PV398blockMeshReader_SM.xml
# SERVER_MANAGER_SOURCES vtkPV398blockMeshReader.cxx
# ADD_PARAVIEW_PLUGIN(PV4blockMeshReader_SM "1.0"
# SERVER_MANAGER_XML PV4blockMeshReader_SM.xml
# SERVER_MANAGER_SOURCES vtkPV4blockMeshReader.cxx
# )
# #
# # Define the client-side portion of the reader plugin
# #
# ADD_PARAVIEW_PLUGIN(
# PV398blockMeshReader "1.0"
# GUI_RESOURCES PV398blockMeshReader.qrc
# PV4blockMeshReader "1.0"
# GUI_RESOURCES PV4blockMeshReader.qrc
# )
# Build the client-side plugin
TARGET_LINK_LIBRARIES(
PV398blockMeshReader_SM
PV4blockMeshReader_SM
OpenFOAM
blockMesh
vtkPV398blockMesh
vtkPV4blockMesh
)
#-----------------------------------------------------------------------------

View File

@ -1,5 +1,5 @@
<RCC>
<qresource prefix="/ParaViewResources" >
<file>PV398blockMeshReader.xml</file>
<file>PV4blockMeshReader.xml</file>
</qresource>
</RCC>

View File

@ -1,5 +1,5 @@
<ParaViewReaders>
<Reader name="PV398blockMeshReader"
<Reader name="PV4blockMeshReader"
extensions="blockMesh"
file_description="OpenFOAM blockMesh reader">
</Reader>

View File

@ -1,8 +1,8 @@
<ServerManagerConfiguration>
<ProxyGroup name="sources">
<SourceProxy
name="PV398blockMeshReader"
class="vtkPV398blockMeshReader">
name="PV4blockMeshReader"
class="vtkPV4blockMeshReader">
<!-- File name - compulsory -->
<StringVectorProperty

View File

@ -23,7 +23,7 @@ License
\*---------------------------------------------------------------------------*/
#include "pqPV398blockMeshReaderPanel.h"
#include "pqPV4blockMeshReaderPanel.h"
// QT
#include <QGridLayout>
@ -50,7 +50,7 @@ License
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
pqPV398blockMeshReaderPanel::pqPV398blockMeshReaderPanel
pqPV4blockMeshReaderPanel::pqPV4blockMeshReaderPanel
(
pqProxy *proxy,
QWidget *p
@ -90,7 +90,7 @@ pqPV398blockMeshReaderPanel::pqPV398blockMeshReaderPanel
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
void pqPV398blockMeshReaderPanel::ShowPointNumbersToggled()
void pqPV4blockMeshReaderPanel::ShowPointNumbersToggled()
{
vtkSMIntVectorProperty::SafeDownCast
(

View File

@ -22,19 +22,19 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
pqPV398blockMeshReaderPanel
pqPV4blockMeshReaderPanel
Description
GUI modifications for the ParaView reader panel
A custom panel for the PV398blockMeshReader.
A custom panel for the PV4blockMeshReader.
SourceFiles
pqPV398blockMeshReaderPanel.cxx
pqPV4blockMeshReaderPanel.cxx
\*---------------------------------------------------------------------------*/
#ifndef pqPV398blockMeshReaderPanel_h
#define pqPV398blockMeshReaderPanel_h
#ifndef pqPV4blockMeshReaderPanel_h
#define pqPV4blockMeshReaderPanel_h
#include "pqAutoGeneratedObjectPanel.h"
@ -50,10 +50,10 @@ class vtkSMSourceProxy;
/*---------------------------------------------------------------------------*\
Class pqPV398blockMeshReaderPanel Declaration
Class pqPV4blockMeshReaderPanel Declaration
\*---------------------------------------------------------------------------*/
class pqPV398blockMeshReaderPanel
class pqPV4blockMeshReaderPanel
:
public pqAutoGeneratedObjectPanel
{
@ -74,11 +74,11 @@ public:
// Constructors
//- Construct from components
pqPV398blockMeshReaderPanel(pqProxy*, QWidget*);
pqPV4blockMeshReaderPanel(pqProxy*, QWidget*);
//- Destructor
// virtual ~pqPV398blockMeshReaderPanel();
// virtual ~pqPV4blockMeshReaderPanel();
};

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
\*---------------------------------------------------------------------------*/
#include "vtkPV398blockMeshReader.h"
#include "vtkPV4blockMeshReader.h"
#include "pqApplicationCore.h"
#include "pqRenderView.h"
@ -40,16 +40,16 @@ License
#include "vtkStringArray.h"
// OpenFOAM includes
#include "vtkPV398blockMesh.H"
#include "vtkPV4blockMesh.H"
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
vtkStandardNewMacro(vtkPV398blockMeshReader);
vtkStandardNewMacro(vtkPV4blockMeshReader);
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
vtkPV398blockMeshReader::vtkPV398blockMeshReader()
vtkPV4blockMeshReader::vtkPV4blockMeshReader()
{
Debug = 0;
vtkDebugMacro(<<"Constructor");
@ -70,7 +70,7 @@ vtkPV398blockMeshReader::vtkPV398blockMeshReader()
SelectionObserver = vtkCallbackCommand::New();
SelectionObserver->SetCallback
(
&vtkPV398blockMeshReader::SelectionModifiedCallback
&vtkPV4blockMeshReader::SelectionModifiedCallback
);
SelectionObserver->SetClientData(this);
@ -91,7 +91,7 @@ vtkPV398blockMeshReader::vtkPV398blockMeshReader()
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
vtkPV398blockMeshReader::~vtkPV398blockMeshReader()
vtkPV4blockMeshReader::~vtkPV4blockMeshReader()
{
vtkDebugMacro(<<"Deconstructor");
@ -118,7 +118,7 @@ vtkPV398blockMeshReader::~vtkPV398blockMeshReader()
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
// Do everything except set the output info
int vtkPV398blockMeshReader::RequestInformation
int vtkPV4blockMeshReader::RequestInformation
(
vtkInformation* vtkNotUsed(request),
vtkInformationVector** vtkNotUsed(inputVector),
@ -127,7 +127,7 @@ int vtkPV398blockMeshReader::RequestInformation
{
vtkDebugMacro(<<"RequestInformation");
if (Foam::vtkPV398blockMesh::debug)
if (Foam::vtkPV4blockMesh::debug)
{
cout<<"REQUEST_INFORMATION\n";
}
@ -140,7 +140,7 @@ int vtkPV398blockMeshReader::RequestInformation
int nInfo = outputVector->GetNumberOfInformationObjects();
if (Foam::vtkPV398blockMesh::debug)
if (Foam::vtkPV4blockMesh::debug)
{
cout<<"RequestInformation with " << nInfo << " item(s)\n";
for (int infoI = 0; infoI < nInfo; ++infoI)
@ -151,7 +151,7 @@ int vtkPV398blockMeshReader::RequestInformation
if (!foamData_)
{
foamData_ = new Foam::vtkPV398blockMesh(FileName, this);
foamData_ = new Foam::vtkPV4blockMesh(FileName, this);
}
else
{
@ -175,7 +175,7 @@ int vtkPV398blockMeshReader::RequestInformation
// Set the output info
int vtkPV398blockMeshReader::RequestData
int vtkPV4blockMeshReader::RequestData
(
vtkInformation* vtkNotUsed(request),
vtkInformationVector** vtkNotUsed(inputVector),
@ -199,7 +199,7 @@ int vtkPV398blockMeshReader::RequestData
int nInfo = outputVector->GetNumberOfInformationObjects();
if (Foam::vtkPV398blockMesh::debug)
if (Foam::vtkPV4blockMesh::debug)
{
cout<<"RequestData with " << nInfo << " item(s)\n";
for (int infoI = 0; infoI < nInfo; ++infoI)
@ -216,7 +216,7 @@ int vtkPV398blockMeshReader::RequestData
)
);
if (Foam::vtkPV398blockMesh::debug)
if (Foam::vtkPV4blockMesh::debug)
{
cout<< "update output with "
<< output->GetNumberOfBlocks() << " blocks\n";
@ -234,7 +234,7 @@ int vtkPV398blockMeshReader::RequestData
void vtkPV398blockMeshReader::SetShowPointNumbers(const int val)
void vtkPV4blockMeshReader::SetShowPointNumbers(const int val)
{
if (ShowPointNumbers != val)
{
@ -244,7 +244,7 @@ void vtkPV398blockMeshReader::SetShowPointNumbers(const int val)
}
void vtkPV398blockMeshReader::updatePointNumbersView(const bool show)
void vtkPV4blockMeshReader::updatePointNumbersView(const bool show)
{
pqApplicationCore* appCore = pqApplicationCore::instance();
@ -277,7 +277,7 @@ void vtkPV398blockMeshReader::updatePointNumbersView(const bool show)
}
void vtkPV398blockMeshReader::PrintSelf(ostream& os, vtkIndent indent)
void vtkPV4blockMeshReader::PrintSelf(ostream& os, vtkIndent indent)
{
vtkDebugMacro(<<"PrintSelf");
@ -292,35 +292,35 @@ void vtkPV398blockMeshReader::PrintSelf(ostream& os, vtkIndent indent)
// ----------------------------------------------------------------------
// Block selection list control
vtkDataArraySelection* vtkPV398blockMeshReader::GetBlockSelection()
vtkDataArraySelection* vtkPV4blockMeshReader::GetBlockSelection()
{
vtkDebugMacro(<<"GetBlockSelection");
return BlockSelection;
}
int vtkPV398blockMeshReader::GetNumberOfBlockArrays()
int vtkPV4blockMeshReader::GetNumberOfBlockArrays()
{
vtkDebugMacro(<<"GetNumberOfBlockArrays");
return BlockSelection->GetNumberOfArrays();
}
const char* vtkPV398blockMeshReader::GetBlockArrayName(int index)
const char* vtkPV4blockMeshReader::GetBlockArrayName(int index)
{
vtkDebugMacro(<<"GetBlockArrayName");
return BlockSelection->GetArrayName(index);
}
int vtkPV398blockMeshReader::GetBlockArrayStatus(const char* name)
int vtkPV4blockMeshReader::GetBlockArrayStatus(const char* name)
{
vtkDebugMacro(<<"GetBlockArrayStatus");
return BlockSelection->ArrayIsEnabled(name);
}
void vtkPV398blockMeshReader::SetBlockArrayStatus
void vtkPV4blockMeshReader::SetBlockArrayStatus
(
const char* name,
int status
@ -341,35 +341,35 @@ void vtkPV398blockMeshReader::SetBlockArrayStatus
// ----------------------------------------------------------------------
// CurvedEdges selection list control
vtkDataArraySelection* vtkPV398blockMeshReader::GetCurvedEdgesSelection()
vtkDataArraySelection* vtkPV4blockMeshReader::GetCurvedEdgesSelection()
{
vtkDebugMacro(<<"GetCurvedEdgesSelection");
return CurvedEdgesSelection;
}
int vtkPV398blockMeshReader::GetNumberOfCurvedEdgesArrays()
int vtkPV4blockMeshReader::GetNumberOfCurvedEdgesArrays()
{
vtkDebugMacro(<<"GetNumberOfCurvedEdgesArrays");
return CurvedEdgesSelection->GetNumberOfArrays();
}
const char* vtkPV398blockMeshReader::GetCurvedEdgesArrayName(int index)
const char* vtkPV4blockMeshReader::GetCurvedEdgesArrayName(int index)
{
vtkDebugMacro(<<"GetCurvedEdgesArrayName");
return CurvedEdgesSelection->GetArrayName(index);
}
int vtkPV398blockMeshReader::GetCurvedEdgesArrayStatus(const char* name)
int vtkPV4blockMeshReader::GetCurvedEdgesArrayStatus(const char* name)
{
vtkDebugMacro(<<"GetCurvedEdgesArrayStatus");
return CurvedEdgesSelection->ArrayIsEnabled(name);
}
void vtkPV398blockMeshReader::SetCurvedEdgesArrayStatus
void vtkPV4blockMeshReader::SetCurvedEdgesArrayStatus
(
const char* name,
int status
@ -389,7 +389,7 @@ void vtkPV398blockMeshReader::SetCurvedEdgesArrayStatus
// ----------------------------------------------------------------------
void vtkPV398blockMeshReader::SelectionModifiedCallback
void vtkPV4blockMeshReader::SelectionModifiedCallback
(
vtkObject*,
unsigned long,
@ -397,11 +397,11 @@ void vtkPV398blockMeshReader::SelectionModifiedCallback
void*
)
{
static_cast<vtkPV398blockMeshReader*>(clientdata)->Modified();
static_cast<vtkPV4blockMeshReader*>(clientdata)->Modified();
}
int vtkPV398blockMeshReader::FillOutputPortInformation
int vtkPV4blockMeshReader::FillOutputPortInformation
(
int port,
vtkInformation* info

View File

@ -22,21 +22,21 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
vtkPV398blockMeshReader
vtkPV4blockMeshReader
Description
reads a dataset in OpenFOAM bockMesh format
vtkPV398blockMeshReader creates an multiblock dataset.
vtkPV4blockMeshReader creates an multiblock dataset.
It uses the OpenFOAM infrastructure (blockMesh).
SourceFiles
vtkPV398blockMeshReader.cxx
vtkPV4blockMeshReader.cxx
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398blockMeshReader_h
#define vtkPV398blockMeshReader_h
#ifndef vtkPV4blockMeshReader_h
#define vtkPV4blockMeshReader_h
// VTK includes
#include "vtkMultiBlockDataSetAlgorithm.h"
@ -49,22 +49,22 @@ class vtkCallbackCommand;
namespace Foam
{
class vtkPV398blockMesh;
class vtkPV4blockMesh;
}
/*---------------------------------------------------------------------------*\
Class vtkPV398blockMeshReader Declaration
Class vtkPV4blockMeshReader Declaration
\*---------------------------------------------------------------------------*/
class vtkPV398blockMeshReader
class vtkPV4blockMeshReader
:
public vtkMultiBlockDataSetAlgorithm
{
public:
vtkTypeMacro(vtkPV398blockMeshReader, vtkMultiBlockDataSetAlgorithm);
vtkTypeMacro(vtkPV4blockMeshReader, vtkMultiBlockDataSetAlgorithm);
void PrintSelf(ostream&, vtkIndent);
static vtkPV398blockMeshReader* New();
static vtkPV4blockMeshReader* New();
// Description:
// Set/Get the filename.
@ -113,10 +113,10 @@ public:
protected:
//- Construct null
vtkPV398blockMeshReader();
vtkPV4blockMeshReader();
//- Destructor
~vtkPV398blockMeshReader();
~vtkPV4blockMeshReader();
//- Return information about mesh, times, etc without loading anything
virtual int RequestInformation
@ -146,10 +146,10 @@ protected:
private:
//- Disallow default bitwise copy construct
vtkPV398blockMeshReader(const vtkPV398blockMeshReader&);
vtkPV4blockMeshReader(const vtkPV4blockMeshReader&);
//- Disallow default bitwise assignment
void operator=(const vtkPV398blockMeshReader&);
void operator=(const vtkPV4blockMeshReader&);
//- Add/remove point numbers to/from the view
void updatePointNumbersView(const bool show);
@ -166,7 +166,7 @@ private:
vtkDataArraySelection* CurvedEdgesSelection;
//BTX
Foam::vtkPV398blockMesh* foamData_;
Foam::vtkPV4blockMesh* foamData_;
//ETX
};

View File

@ -0,0 +1,5 @@
vtkPV4blockMesh.C
vtkPV4blockMeshConvert.C
vtkPV4blockMeshUtils.C
LIB = $(FOAM_LIBBIN)/libvtkPV4blockMesh

View File

@ -2,11 +2,11 @@ EXE_INC = \
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/mesh/blockMesh/lnInclude \
-I$(ParaView_INCLUDE_DIR) \
-I../../vtkPV398Readers/lnInclude \
-I../PV398blockMeshReader
-I../../vtkPV4Readers/lnInclude \
-I../PV4blockMeshReader
LIB_LIBS = \
-lmeshTools \
-lblockMesh \
-L$(FOAM_LIBBIN) -lvtkPV398Readers \
-L$(FOAM_LIBBIN) -lvtkPV4Readers \
$(GLIBS)

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
InClass
vtkPV398blockMesh
vtkPV4blockMesh
\*---------------------------------------------------------------------------*/

View File

@ -23,8 +23,8 @@ License
\*---------------------------------------------------------------------------*/
#include "vtkPV398blockMesh.H"
#include "vtkPV398blockMeshReader.h"
#include "vtkPV4blockMesh.H"
#include "vtkPV4blockMeshReader.h"
// OpenFOAM includes
#include "blockMesh.H"
@ -43,13 +43,13 @@ License
namespace Foam
{
defineTypeNameAndDebug(vtkPV398blockMesh, 0);
defineTypeNameAndDebug(vtkPV4blockMesh, 0);
}
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
void Foam::vtkPV398blockMesh::resetCounters()
void Foam::vtkPV4blockMesh::resetCounters()
{
// Reset mesh part ids and sizes
arrayRangeBlocks_.reset();
@ -58,14 +58,14 @@ void Foam::vtkPV398blockMesh::resetCounters()
}
void Foam::vtkPV398blockMesh::updateInfoBlocks
void Foam::vtkPV4blockMesh::updateInfoBlocks
(
vtkDataArraySelection* arraySelection
)
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398blockMesh::updateInfoBlocks"
Info<< "<beg> Foam::vtkPV4blockMesh::updateInfoBlocks"
<< " [meshPtr=" << (meshPtr_ ? "set" : "NULL") << "]" << endl;
}
@ -96,19 +96,19 @@ void Foam::vtkPV398blockMesh::updateInfoBlocks
// just for debug info
getSelectedArrayEntries(arraySelection);
Info<< "<end> Foam::vtkPV398blockMesh::updateInfoBlocks" << endl;
Info<< "<end> Foam::vtkPV4blockMesh::updateInfoBlocks" << endl;
}
}
void Foam::vtkPV398blockMesh::updateInfoEdges
void Foam::vtkPV4blockMesh::updateInfoEdges
(
vtkDataArraySelection* arraySelection
)
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398blockMesh::updateInfoEdges"
Info<< "<beg> Foam::vtkPV4blockMesh::updateInfoEdges"
<< " [meshPtr=" << (meshPtr_ ? "set" : "NULL") << "]" << endl;
}
@ -136,17 +136,17 @@ void Foam::vtkPV398blockMesh::updateInfoEdges
// just for debug info
getSelectedArrayEntries(arraySelection);
Info<< "<end> Foam::vtkPV398blockMesh::updateInfoEdges" << endl;
Info<< "<end> Foam::vtkPV4blockMesh::updateInfoEdges" << endl;
}
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
Foam::vtkPV398blockMesh::vtkPV398blockMesh
Foam::vtkPV4blockMesh::vtkPV4blockMesh
(
const char* const FileName,
vtkPV398blockMeshReader* reader
vtkPV4blockMeshReader* reader
)
:
reader_(reader),
@ -160,7 +160,7 @@ Foam::vtkPV398blockMesh::vtkPV398blockMesh
{
if (debug)
{
Info<< "Foam::vtkPV398blockMesh::vtkPV398blockMesh - "
Info<< "Foam::vtkPV4blockMesh::vtkPV4blockMesh - "
<< FileName << endl;
}
@ -243,11 +243,11 @@ Foam::vtkPV398blockMesh::vtkPV398blockMesh
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
Foam::vtkPV398blockMesh::~vtkPV398blockMesh()
Foam::vtkPV4blockMesh::~vtkPV4blockMesh()
{
if (debug)
{
Info<< "<end> Foam::vtkPV398blockMesh::~vtkPV398blockMesh" << endl;
Info<< "<end> Foam::vtkPV4blockMesh::~vtkPV4blockMesh" << endl;
}
// Hmm. pointNumberTextActors are not getting removed
@ -264,11 +264,11 @@ Foam::vtkPV398blockMesh::~vtkPV398blockMesh()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::vtkPV398blockMesh::updateInfo()
void Foam::vtkPV4blockMesh::updateInfo()
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398blockMesh::updateInfo"
Info<< "<beg> Foam::vtkPV4blockMesh::updateInfo"
<< " [meshPtr=" << (meshPtr_ ? "set" : "NULL") << "] " << endl;
}
@ -314,16 +314,16 @@ void Foam::vtkPV398blockMesh::updateInfo()
if (debug)
{
Info<< "<end> Foam::vtkPV398blockMesh::updateInfo" << endl;
Info<< "<end> Foam::vtkPV4blockMesh::updateInfo" << endl;
}
}
void Foam::vtkPV398blockMesh::updateFoamMesh()
void Foam::vtkPV4blockMesh::updateFoamMesh()
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398blockMesh::updateFoamMesh" << endl;
Info<< "<beg> Foam::vtkPV4blockMesh::updateFoamMesh" << endl;
}
// Check to see if the OpenFOAM mesh has been created
@ -355,12 +355,12 @@ void Foam::vtkPV398blockMesh::updateFoamMesh()
if (debug)
{
Info<< "<end> Foam::vtkPV398blockMesh::updateFoamMesh" << endl;
Info<< "<end> Foam::vtkPV4blockMesh::updateFoamMesh" << endl;
}
}
void Foam::vtkPV398blockMesh::Update
void Foam::vtkPV4blockMesh::Update
(
vtkMultiBlockDataSet* output
)
@ -391,13 +391,13 @@ void Foam::vtkPV398blockMesh::Update
}
void Foam::vtkPV398blockMesh::CleanUp()
void Foam::vtkPV4blockMesh::CleanUp()
{
reader_->UpdateProgress(1.0);
}
void Foam::vtkPV398blockMesh::renderPointNumbers
void Foam::vtkPV4blockMesh::renderPointNumbers
(
vtkRenderer* renderer,
const bool show
@ -456,7 +456,7 @@ void Foam::vtkPV398blockMesh::renderPointNumbers
void Foam::vtkPV398blockMesh::PrintSelf(ostream& os, vtkIndent indent) const
void Foam::vtkPV4blockMesh::PrintSelf(ostream& os, vtkIndent indent) const
{
#if 0
os << indent << "Number of nodes: "

View File

@ -22,24 +22,24 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::vtkPV398blockMesh
Foam::vtkPV4blockMesh
Description
Provides a reader interface for OpenFOAM blockMesh to VTK interaction
SourceFiles
vtkPV398blockMesh.C
vtkPV398blockMeshConvert.C
vtkPV398blockMeshUpdate.C
vtkPV398blockMeshUtils.C
vtkPV4blockMesh.C
vtkPV4blockMeshConvert.C
vtkPV4blockMeshUpdate.C
vtkPV4blockMeshUtils.C
// Needed by VTK:
vtkDataArrayTemplateImplicit.txx
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398blockMesh_H
#define vtkPV398blockMesh_H
#ifndef vtkPV4blockMesh_H
#define vtkPV4blockMesh_H
// do not include legacy strstream headers
#ifndef VTK_EXCLUDE_STRSTREAM_HEADERS
@ -58,7 +58,7 @@ SourceFiles
class vtkDataArraySelection;
class vtkDataSet;
class vtkPoints;
class vtkPV398blockMeshReader;
class vtkPV4blockMeshReader;
class vtkRenderer;
class vtkTextActor;
class vtkMultiBlockDataSet;
@ -79,10 +79,10 @@ class blockMesh;
template<class Type> class List;
/*---------------------------------------------------------------------------*\
Class vtkPV398blockMesh Declaration
Class vtkPV4blockMesh Declaration
\*---------------------------------------------------------------------------*/
class vtkPV398blockMesh
class vtkPV4blockMesh
{
// Private classes
@ -164,8 +164,8 @@ class vtkPV398blockMesh
// Private Data
//- Access to the controlling vtkPV398blockMeshReader
vtkPV398blockMeshReader* reader_;
//- Access to the controlling vtkPV4blockMeshReader
vtkPV4blockMeshReader* reader_;
//- OpenFOAM time control
autoPtr<Time> dbPtr_;
@ -294,31 +294,31 @@ class vtkPV398blockMesh
//- Disallow default bitwise copy construct
vtkPV398blockMesh(const vtkPV398blockMesh&);
vtkPV4blockMesh(const vtkPV4blockMesh&);
//- Disallow default bitwise assignment
void operator=(const vtkPV398blockMesh&);
void operator=(const vtkPV4blockMesh&);
public:
//- Static data members
ClassName("vtkPV398blockMesh");
ClassName("vtkPV4blockMesh");
// Constructors
//- Construct from components
vtkPV398blockMesh
vtkPV4blockMesh
(
const char* const FileName,
vtkPV398blockMeshReader* reader
vtkPV4blockMeshReader* reader
);
//- Destructor
~vtkPV398blockMesh();
~vtkPV4blockMesh();
// Member Functions

View File

@ -23,8 +23,8 @@ License
\*---------------------------------------------------------------------------*/
#include "vtkPV398blockMesh.H"
#include "vtkPV398blockMeshReader.h"
#include "vtkPV4blockMesh.H"
#include "vtkPV4blockMeshReader.h"
// OpenFOAM includes
#include "blockMesh.H"
@ -43,7 +43,7 @@ License
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::vtkPV398blockMesh::convertMeshBlocks
void Foam::vtkPV4blockMesh::convertMeshBlocks
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -59,7 +59,7 @@ void Foam::vtkPV398blockMesh::convertMeshBlocks
if (debug)
{
Info<< "<beg> Foam::vtkPV398blockMesh::convertMeshBlocks" << endl;
Info<< "<beg> Foam::vtkPV4blockMesh::convertMeshBlocks" << endl;
}
int blockI = 0;
@ -130,12 +130,12 @@ void Foam::vtkPV398blockMesh::convertMeshBlocks
if (debug)
{
Info<< "<end> Foam::vtkPV398blockMesh::convertMeshBlocks" << endl;
Info<< "<end> Foam::vtkPV4blockMesh::convertMeshBlocks" << endl;
}
}
void Foam::vtkPV398blockMesh::convertMeshEdges
void Foam::vtkPV4blockMesh::convertMeshEdges
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -240,13 +240,13 @@ void Foam::vtkPV398blockMesh::convertMeshEdges
if (debug)
{
Info<< "<end> Foam::vtkPV398blockMesh::convertMeshEdges" << endl;
Info<< "<end> Foam::vtkPV4blockMesh::convertMeshEdges" << endl;
}
}
void Foam::vtkPV398blockMesh::convertMeshCorners
void Foam::vtkPV4blockMesh::convertMeshCorners
(
vtkMultiBlockDataSet* output,
int& blockNo
@ -261,7 +261,7 @@ void Foam::vtkPV398blockMesh::convertMeshCorners
if (debug)
{
Info<< "<beg> Foam::vtkPV398blockMesh::convertMeshCorners" << endl;
Info<< "<beg> Foam::vtkPV4blockMesh::convertMeshCorners" << endl;
}
if (true) // or some flag or other condition
@ -311,7 +311,7 @@ void Foam::vtkPV398blockMesh::convertMeshCorners
if (debug)
{
Info<< "<end> Foam::vtkPV398blockMesh::convertMeshCorners" << endl;
Info<< "<end> Foam::vtkPV4blockMesh::convertMeshCorners" << endl;
}
}

View File

@ -26,8 +26,8 @@ Description
\*---------------------------------------------------------------------------*/
#include "vtkPV398blockMesh.H"
#include "vtkPV398blockMeshReader.h"
#include "vtkPV4blockMesh.H"
#include "vtkPV4blockMeshReader.h"
// VTK includes
#include "vtkDataArraySelection.h"
@ -66,7 +66,7 @@ namespace Foam
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
void Foam::vtkPV398blockMesh::AddToBlock
void Foam::vtkPV4blockMesh::AddToBlock
(
vtkMultiBlockDataSet* output,
vtkDataSet* dataset,
@ -84,7 +84,7 @@ void Foam::vtkPV398blockMesh::AddToBlock
{
if (blockDO)
{
FatalErrorIn("Foam::vtkPV398blockMesh::AddToBlock")
FatalErrorIn("Foam::vtkPV4blockMesh::AddToBlock")
<< "Block already has a vtkDataSet assigned to it"
<< endl;
return;
@ -126,7 +126,7 @@ void Foam::vtkPV398blockMesh::AddToBlock
}
vtkDataSet* Foam::vtkPV398blockMesh::GetDataSetFromBlock
vtkDataSet* Foam::vtkPV4blockMesh::GetDataSetFromBlock
(
vtkMultiBlockDataSet* output,
const arrayRange& range,
@ -148,7 +148,7 @@ vtkDataSet* Foam::vtkPV398blockMesh::GetDataSetFromBlock
// ununsed at the moment
Foam::label Foam::vtkPV398blockMesh::GetNumberOfDataSets
Foam::label Foam::vtkPV4blockMesh::GetNumberOfDataSets
(
vtkMultiBlockDataSet* output,
const arrayRange& range
@ -167,7 +167,7 @@ Foam::label Foam::vtkPV398blockMesh::GetNumberOfDataSets
}
Foam::wordHashSet Foam::vtkPV398blockMesh::getSelected
Foam::wordHashSet Foam::vtkPV4blockMesh::getSelected
(
vtkDataArraySelection* select
)
@ -187,7 +187,7 @@ Foam::wordHashSet Foam::vtkPV398blockMesh::getSelected
}
Foam::wordHashSet Foam::vtkPV398blockMesh::getSelected
Foam::wordHashSet Foam::vtkPV4blockMesh::getSelected
(
vtkDataArraySelection* select,
const arrayRange& range
@ -208,7 +208,7 @@ Foam::wordHashSet Foam::vtkPV398blockMesh::getSelected
}
Foam::stringList Foam::vtkPV398blockMesh::getSelectedArrayEntries
Foam::stringList Foam::vtkPV4blockMesh::getSelectedArrayEntries
(
vtkDataArraySelection* select
)
@ -247,7 +247,7 @@ Foam::stringList Foam::vtkPV398blockMesh::getSelectedArrayEntries
}
Foam::stringList Foam::vtkPV398blockMesh::getSelectedArrayEntries
Foam::stringList Foam::vtkPV4blockMesh::getSelectedArrayEntries
(
vtkDataArraySelection* select,
const arrayRange& range
@ -286,7 +286,7 @@ Foam::stringList Foam::vtkPV398blockMesh::getSelectedArrayEntries
}
void Foam::vtkPV398blockMesh::setSelectedArrayEntries
void Foam::vtkPV4blockMesh::setSelectedArrayEntries
(
vtkDataArraySelection* select,
const stringList& selections
@ -312,7 +312,7 @@ void Foam::vtkPV398blockMesh::setSelectedArrayEntries
}
void Foam::vtkPV398blockMesh::updateBoolListStatus
void Foam::vtkPV4blockMesh::updateBoolListStatus
(
boolList& status,
vtkDataArraySelection* selection
@ -320,7 +320,7 @@ void Foam::vtkPV398blockMesh::updateBoolListStatus
{
if (debug)
{
Info<< "<beg> Foam::vtkPV398blockMesh::updateBoolListStatus" << endl;
Info<< "<beg> Foam::vtkPV4blockMesh::updateBoolListStatus" << endl;
}
const label nElem = selection->GetNumberOfArrays();
@ -345,7 +345,7 @@ void Foam::vtkPV398blockMesh::updateBoolListStatus
}
if (debug)
{
Info<< "<end> Foam::vtkPV398blockMesh::updateBoolListStatus" << endl;
Info<< "<end> Foam::vtkPV4blockMesh::updateBoolListStatus" << endl;
}
}

View File

@ -0,0 +1,3 @@
vtkPV4Readers.C
LIB = $(FOAM_LIBBIN)/libvtkPV4Readers

View File

@ -26,7 +26,7 @@ Description
\*---------------------------------------------------------------------------*/
#include "vtkPV398Readers.H"
#include "vtkPV4Readers.H"
// OpenFOAM includes
#include "IFstream.H"
@ -41,7 +41,7 @@ Description
namespace Foam
{
defineTypeNameAndDebug(vtkPV398Readers, 0);
defineTypeNameAndDebug(vtkPV4Readers, 0);
}
@ -75,7 +75,7 @@ namespace Foam
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
void Foam::vtkPV398Readers::AddToBlock
void Foam::vtkPV4Readers::AddToBlock
(
vtkMultiBlockDataSet* output,
vtkDataSet* dataset,
@ -93,7 +93,7 @@ void Foam::vtkPV398Readers::AddToBlock
{
if (blockDO)
{
FatalErrorIn("Foam::vtkPV398Readers::AddToBlock")
FatalErrorIn("Foam::vtkPV4Readers::AddToBlock")
<< "Block already has a vtkDataSet assigned to it"
<< endl;
return;
@ -135,7 +135,7 @@ void Foam::vtkPV398Readers::AddToBlock
}
vtkDataSet* Foam::vtkPV398Readers::GetDataSetFromBlock
vtkDataSet* Foam::vtkPV4Readers::GetDataSetFromBlock
(
vtkMultiBlockDataSet* output,
const partInfo& selector,
@ -157,7 +157,7 @@ vtkDataSet* Foam::vtkPV398Readers::GetDataSetFromBlock
// ununsed at the moment
Foam::label Foam::vtkPV398Readers::GetNumberOfDataSets
Foam::label Foam::vtkPV4Readers::GetNumberOfDataSets
(
vtkMultiBlockDataSet* output,
const partInfo& selector
@ -176,13 +176,13 @@ Foam::label Foam::vtkPV398Readers::GetNumberOfDataSets
}
// Foam::word Foam::vtkPV398Readers::getPartName(int partId)
// Foam::word Foam::vtkPV4Readers::getPartName(int partId)
// {
// return getFirstWord(reader_->GetPartArrayName(partId));
// }
Foam::wordHashSet Foam::vtkPV398Readers::getSelected
Foam::wordHashSet Foam::vtkPV4Readers::getSelected
(
vtkDataArraySelection* select
)
@ -202,7 +202,7 @@ Foam::wordHashSet Foam::vtkPV398Readers::getSelected
}
Foam::wordHashSet Foam::vtkPV398Readers::getSelected
Foam::wordHashSet Foam::vtkPV4Readers::getSelected
(
vtkDataArraySelection* select,
const partInfo& selector
@ -223,7 +223,7 @@ Foam::wordHashSet Foam::vtkPV398Readers::getSelected
}
Foam::stringList Foam::vtkPV398Readers::getSelectedArrayEntries
Foam::stringList Foam::vtkPV4Readers::getSelectedArrayEntries
(
vtkDataArraySelection* select
)
@ -262,7 +262,7 @@ Foam::stringList Foam::vtkPV398Readers::getSelectedArrayEntries
}
Foam::stringList Foam::vtkPV398Readers::getSelectedArrayEntries
Foam::stringList Foam::vtkPV4Readers::getSelectedArrayEntries
(
vtkDataArraySelection* select,
const partInfo& selector
@ -301,7 +301,7 @@ Foam::stringList Foam::vtkPV398Readers::getSelectedArrayEntries
}
void Foam::vtkPV398Readers::setSelectedArrayEntries
void Foam::vtkPV4Readers::setSelectedArrayEntries
(
vtkDataArraySelection* select,
const stringList& selections

View File

@ -22,19 +22,19 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Namespace
Foam::vtkPV398Readers
Foam::vtkPV4Readers
Description
A collection of helper functions when building a reader interface in
ParaView3.
SourceFiles
vtkPV398Readers.C
vtkPV4Readers.C
\*---------------------------------------------------------------------------*/
#ifndef vtkPV398Readers_H
#define vtkPV398Readers_H
#ifndef vtkPV4Readers_H
#define vtkPV4Readers_H
// do not include legacy strstream headers
#ifndef VTK_EXCLUDE_STRSTREAM_HEADERS
@ -53,7 +53,7 @@ SourceFiles
class vtkDataArraySelection;
class vtkDataSet;
class vtkPoints;
class vtkPV398FoamReader;
class vtkPV4FoamReader;
class vtkRenderer;
class vtkTextActor;
class vtkMultiBlockDataSet;
@ -66,10 +66,10 @@ class vtkIndent;
namespace Foam
{
namespace vtkPV398Readers
namespace vtkPV4Readers
{
//- Declare name of the class and its debug switch
NamespaceName("vtkPV398Readers");
NamespaceName("vtkPV4Readers");
//- Bookkeeping for GUI checklists and the multi-block organization
class partInfo
@ -217,7 +217,7 @@ namespace vtkPV398Readers
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace vtkPV398
} // End namespace vtkPV4
} // End namespace Foam

View File

@ -60,12 +60,18 @@ Description
nw | Number of sampling windows | no | 100
fl | Lower frequency band | no | 25
fU | Upper frequency band | no | 10000
graphFormat | Output grapch format | no | raw
graphFormat | Output graph format | no | raw
\endtable
Current graph outputs include:
- FFT of the pressure data
- narrow-band PFL (pressure-fluctuation level) spectrum
- one-third-octave-band PFL spectrum
- one-third-octave-band pressure spectrum
SeeAlso
CSV.H
noiseFFT.H
\*---------------------------------------------------------------------------*/

271
bin/paraFoam4 Executable file
View File

@ -0,0 +1,271 @@
#!/bin/sh
#------------------------------------------------------------------------------
# ========= |
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
# \\ / O peration |
# \\ / A nd | Copyright (C) 2011-2013 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/>.
#
# Script
# paraFoam
#
# Description
# start paraview with the OpenFOAM libraries
#
# Note
# combining -block or -builtin options with the -region option yields
# undefined behaviour
#------------------------------------------------------------------------------
usage() {
exec 1>&2
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
cat<<USAGE
Usage: ${0##*/} [OPTION] [PARAVIEW_OPTION]
options:
-block use blockMesh reader (uses .blockMesh extension)
-builtin use VTK builtin OpenFOAM reader (uses .foam extension)
-case <dir> specify alternative case directory, default is the cwd
-region <name> specify alternative mesh region
-touch only create the file (eg, .blockMesh, .OpenFOAM, etc)
-touchAll create .blockMesh, .OpenFOAM files (and for all regions)
-help print the usage
paraview options start with a double dashes
* start paraview $ParaView_VERSION with the OpenFOAM libraries
USAGE
exit 1
}
# We want to do nice exit when running paraview to give paraview opportunity
# to clean up
unset FOAM_ABORT
unset regionName optTouch
# Hack: change all locale to 'C' i.e. using '.' for decimal point. This is
# only needed temporarily until paraview is locale aware. (git version is
# already 2010-07)
export LC_ALL=C
# reader extension
extension=OpenFOAM
requirePV=1
# parse options
while [ "$#" -gt 0 ]
do
case "$1" in
-h | -help)
usage
;;
-block | -blockMesh)
extension=blockMesh
shift
;;
-builtin)
extension=foam
requirePV=0
shift
;;
-case)
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
cd "$2" 2>/dev/null || usage "directory does not exist: '$2'"
shift 2
;;
-region)
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
regionName=$2
shift 2
;;
-touch)
optTouch=true
requirePV=0
shift
;;
-touchAll)
optTouch=all
requirePV=0
shift
;;
--)
shift
break # stop here, treat balance as paraview options
;;
--*)
break # stop here, treat this and balance as paraview options
;;
*)
usage "unknown option/argument: '$*'"
;;
esac
done
#
# check that reader module has been built
#
if [ $requirePV -eq 1 -a ! -f $PV_PLUGIN_PATH/libPV4FoamReader_SM.so ]
then
cat<< BUILDREADER
FATAL ERROR: ParaView reader module libraries do not exist
Please build the reader module before continuing:
cd \$FOAM_UTILITIES/postProcessing/graphics/PV4Readers
./Allwclean
./Allwmake
BUILDREADER
exit 1
fi
#
# check for --data=... argument
#
hasDataArg()
{
hasData=false
while [ "$#" -gt 0 ]
do
case "$1" in
(--data=*)
hasData=true
break
;;
esac
shift
done
}
hasDataArg $@
# get a sensible caseName from the directory name
caseName=${PWD##*/}
caseFile="$caseName.$extension"
fvControls="system"
if [ -n "$regionName" ]
then
if [ ! -d constant/$regionName ]
then
echo "FATAL ERROR: Region $regionName does not exist"
exit 1
else
caseFile="$caseName{$regionName}.$extension"
fvControls="$fvControls/$regionName"
fi
fi
case "${optTouch:-false}" in
all)
extension=OpenFOAM
if [ -f constant/polyMesh/blockMeshDict ]
then
touch "$caseName.blockMesh"
echo "created '$caseName.blockMesh'"
fi
touch "$caseName.$extension"
echo "created '$caseName.$extension'"
# discover probable regions
for region in constant/*
do
if [ -d $region -a -d $region/polyMesh ]
then
regionName=${region##*/}
touch "$caseName{$regionName}.$extension"
echo "created '$caseName{$regionName}.$extension'"
fi
done
exit 0
;;
true)
touch "$caseFile"
echo "created '$caseFile'"
exit 0
;;
esac
# parent directory for normal or parallel results
case "$caseName" in
processor*) parentDir=".." ;;
*) parentDir="." ;;
esac
if [ "${hasData:-false}" = true ]
then
# has --data=.., send directly to paraview
exec paraview "$@"
else
# check existence of essential files
warn="WARN file does not exist:"
case $extension in
blockMesh)
for check in \
system/controlDict \
constant/polyMesh/blockMeshDict \
;
do
[ -s "$parentDir/$check" ] || {
[ -n "$warn" ] && echo "$warn" 1>&2
echo " $parentDir/$check" 1>&2
unset warn
}
done
;;
builtin | OpenFOAM)
for check in \
system/controlDict \
$fvControls/fvSchemes \
$fvControls/fvSolution \
;
do
[ -s "$parentDir/$check" ] || {
[ -n "$warn" ] && echo "$warn" 1>&2
echo " $parentDir/$check" 1>&2
unset warn
}
done
;;
esac
# only create/remove caseFile if it didn't already exist
[ -e $caseFile ] || {
trap "rm -f $caseFile 2>/dev/null; exit 0" EXIT TERM INT
touch "$caseFile"
echo "created temporary '$caseFile'"
}
# For now filter out any ld.so errors. Caused by non-system compiler?
paraview --data="$caseFile" "$@" 2>&1 | fgrep -v 'Inconsistency detected by ld.so'
fi
#------------------------------------------------------------------------------

View File

@ -41,6 +41,8 @@ usage: ${0##*/}
--archOption arch specify architecture option (only 32 or 64 applicable)
--paraviewInstall dir specify ParaView_DIR (e.g. /opt/paraviewopenfoam3120)
--paraviewVersion ver specify ParaView_VERSION (e.g. 3.12.0)
--scotchArchPath dir specify SCOTCH_ARCH_PATH (e.g. /opt/OpenFOAM-scotch-6.0.0/)
--scotchVersion ver specify SCOTCH_VERSION (e.g. 6.0.0)
* hardcode paths to installation
@ -49,32 +51,6 @@ USAGE
}
# Function to do replacement on file. Checks if any replacement has been done.
# inlineSed <file> <sedCommand> <description>
#_inlineSed()
#{
# [ -f "$1" ] || {
# echo "Missing file: $1"
# exit 1
# }
#
# backup="temp.$$"
# cp $1 $backup
# sed -i -e "$2" $1
#
# if cmp $1 $backup > /dev/null 2>&1
# then
# echo "Failed: $3 in $1"
# rm $backup 2>/dev/null
# exit 1
# else
# echo "Okay: $3 in $1"
# rm $backup 2>/dev/null
# fi
#
# return 0
#}
# Function to do replacement on file. Checks if any replacement has been done.
# _inlineSed <file> <regexp> <replacement> <msg>
_inlineSed()
@ -103,7 +79,8 @@ _inlineSed()
[ -f etc/bashrc ] || usage "Please run from top-level directory of installation"
unset foamInstall projectName projectVersion archOption paraviewInstall
unset foamInstall projectName projectVersion archOption
unset paraviewInstall scotchArchPath
# parse options
while [ "$#" -gt 0 ]
@ -186,13 +163,36 @@ do
"Replacing ParaView_VERSION setting by '$paraviewVersion'"
shift 2
;;
-scotchVersion | --scotchVersion)
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
scotchVersion="$2"
_inlineSed \
etc/config/scotch.sh \
'SCOTCH_VERSION=.*' \
'SCOTCH_VERSION='"$scotchVersion" \
"Replacing SCOTCH_VERSION setting by '$scotchVersion'"
shift 2
;;
-scotchArchPath | --scotchArchPath)
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
scotchArchPath="$2"
_inlineSed \
etc/config/scotch.sh \
'SCOTCH_ARCH_PATH=.*' \
'SCOTCH_ARCH_PATH='"$scotchArchPath" \
"Replacing SCOTCH_ARCH_PATH setting by '$scotchArchPath'"
shift 2
;;
*)
usage "unknown option/argument: '$*'"
;;
esac
done
[ -n "$foamInstall" -o -n "$projectName" -o -n "$projectVersion" -o -n "$archOption" -o -n "$paraviewInstall" -o -n "$paraviewVersion" ] || usage "Please specify at least one configure option"
[ -n "$foamInstall" -o -n "$projectName" -o -n "$projectVersion" -o -n "$archOption" \
-o -n "$paraviewInstall" -o -n "$paraviewVersion" \
-o -n "$scotchVersion" -o -n "$scotchArchPath" \
] || usage "Please specify at least one configure option"
#echo "Replacing WM_PROJECT setting by '$projectName'"
#sed -i -e 's@WM_PROJECT=.*@WM_PROJECT='"$projectName@" etc/bashrc

View File

@ -109,7 +109,9 @@ polyMeshFiltering
{
filterEdges on;
filterFaces off;
writeTetDualMesh false;
writeTetDualMesh true;
writeCellShapeControlMesh true;
writeBackgroundMeshDecomposition true;
}

View File

@ -51,8 +51,7 @@ done
#- ParaView version, automatically determine major version
#export ParaView_VERSION=3.12.0
export ParaView_VERSION=3.98.1
export ParaView_VERSION=4.0.1
export ParaView_MAJOR=detect

View File

@ -24,7 +24,7 @@ wmakeLnInclude OpenFOAM
wmakeLnInclude OSspecific/${WM_OSTYPE:-POSIX}
Pstream/Allwmake $*
OSspecific/${WM_OSTYPE:-POSIX}/Allwmake
OSspecific/${WM_OSTYPE:-POSIX}/Allwmake $*
wmake $makeType OpenFOAM
wmake $makeType fileFormats

View File

@ -1,5 +1,6 @@
#!/bin/sh
cd ${0%/*} || exit 1 # run from this directory
makeType=${1:-libo}
unset COMP_FLAGS LINK_FLAGS
@ -19,6 +20,6 @@ fi
# make (non-shared) object
wmake libo
wmake $makeType
# ----------------------------------------------------------------- end-of-file

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -79,6 +79,9 @@ public:
class const_iterator;
friend class const_iterator;
class const_reverse_iterator;
friend class const_reverse_iterator;
// Constructors
@ -254,6 +257,48 @@ public:
};
// STL const_reverse_iterator
typedef typename LListBase::const_reverse_iterator
LListBase_const_reverse_iterator;
//- An STL-conforming const_reverse_iterator
class const_reverse_iterator
:
public LListBase_const_reverse_iterator
{
public:
//- Construct from base const_reverse_iterator
const_reverse_iterator(LListBase_const_reverse_iterator baseIter)
:
LListBase_const_reverse_iterator(baseIter)
{}
// Member operators
const T& operator*()
{
return
static_cast<const T&>
(LListBase_const_reverse_iterator::operator*());
}
const T& operator()()
{
return operator*();
}
const_reverse_iterator& operator++()
{
LListBase_const_reverse_iterator::operator++();
return *this;
}
};
// STL member operators
//- Equality operation on ULists of the same type.

View File

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -42,6 +42,12 @@ Foam::DLListBase::const_iterator Foam::DLListBase::endConstIter_
reinterpret_cast<const link*>(0)
);
Foam::DLListBase::const_reverse_iterator Foam::DLListBase::endConstRevIter_
(
static_cast<const DLListBase&>(DLListBase()),
reinterpret_cast<const link*>(0)
);
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //

Some files were not shown because too many files have changed in this diff Show More