mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
ENH: Have edge addressing from coupledPatch to mesh
This commit is contained in:
@ -1122,6 +1122,9 @@ void Foam::globalMeshData::clearOut()
|
||||
deleteDemandDrivenData(sharedEdgeAddrPtr_);
|
||||
|
||||
coupledPatchPtr_.clear();
|
||||
coupledPatchMeshEdgesPtr_.clear();
|
||||
coupledPatchMeshEdgeMapPtr_.clear();
|
||||
|
||||
// Point
|
||||
globalPointNumberingPtr_.clear();
|
||||
globalPointSlavesPtr_.clear();
|
||||
@ -1409,6 +1412,45 @@ const Foam::indirectPrimitivePatch& Foam::globalMeshData::coupledPatch() const
|
||||
}
|
||||
|
||||
|
||||
const Foam::labelList& Foam::globalMeshData::coupledPatchMeshEdges() const
|
||||
{
|
||||
if (!coupledPatchMeshEdgesPtr_.valid())
|
||||
{
|
||||
coupledPatchMeshEdgesPtr_.reset
|
||||
(
|
||||
new labelList
|
||||
(
|
||||
coupledPatch().meshEdges
|
||||
(
|
||||
mesh_.edges(),
|
||||
mesh_.pointEdges()
|
||||
)
|
||||
)
|
||||
);
|
||||
}
|
||||
return coupledPatchMeshEdgesPtr_();
|
||||
}
|
||||
|
||||
|
||||
const Foam::Map<Foam::label>& Foam::globalMeshData::coupledPatchMeshEdgeMap()
|
||||
const
|
||||
{
|
||||
if (!coupledPatchMeshEdgeMapPtr_.valid())
|
||||
{
|
||||
const labelList& me = coupledPatchMeshEdges();
|
||||
|
||||
coupledPatchMeshEdgeMapPtr_.reset(new Map<label>(2*me.size()));
|
||||
Map<label>& em = coupledPatchMeshEdgeMapPtr_();
|
||||
|
||||
forAll(me, i)
|
||||
{
|
||||
em.insert(me[i], i);
|
||||
}
|
||||
}
|
||||
return coupledPatchMeshEdgeMapPtr_();
|
||||
}
|
||||
|
||||
|
||||
const Foam::globalIndex& Foam::globalMeshData::globalPointNumbering() const
|
||||
{
|
||||
if (!globalPointNumberingPtr_.valid())
|
||||
|
||||
@ -208,6 +208,10 @@ class globalMeshData
|
||||
|
||||
mutable autoPtr<indirectPrimitivePatch> coupledPatchPtr_;
|
||||
|
||||
mutable autoPtr<labelList> coupledPatchMeshEdgesPtr_;
|
||||
|
||||
mutable autoPtr<Map<label> > coupledPatchMeshEdgeMapPtr_;
|
||||
|
||||
// Collocated
|
||||
|
||||
// Coupled point to collocated coupled points
|
||||
@ -506,6 +510,13 @@ public:
|
||||
//- Return patch of all coupled faces
|
||||
const indirectPrimitivePatch& coupledPatch() const;
|
||||
|
||||
//- Return map from coupledPatch edges to mesh edges
|
||||
const labelList& coupledPatchMeshEdges() const;
|
||||
|
||||
//- Return map from mesh edges to coupledPatch edges
|
||||
const Map<label>& coupledPatchMeshEdgeMap() const;
|
||||
|
||||
|
||||
// Coupled point to collocated coupled points. Coupled points are
|
||||
// points on any coupled patch.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user