surfaceFieldValue: Fix run-time usage with non-conformal coupled
This commit is contained in:
@ -1223,9 +1223,6 @@ bool Foam::fvMeshStitcher::disconnect
|
||||
// Prevent hangs caused by processor cyclic patches using mesh geometry
|
||||
mesh_.deltaCoeffs();
|
||||
|
||||
meshObject::movePoints<fvMesh>(mesh_);
|
||||
meshObject::movePoints<lduMesh>(mesh_);
|
||||
|
||||
if (coupled && geometric)
|
||||
{
|
||||
const volScalarField::Internal o(openness());
|
||||
@ -1246,6 +1243,11 @@ bool Foam::fvMeshStitcher::disconnect
|
||||
Info<< decrIndent;
|
||||
}
|
||||
|
||||
meshObject::movePoints<fvMesh>(mesh_);
|
||||
meshObject::movePoints<lduMesh>(mesh_);
|
||||
|
||||
const_cast<Time&>(mesh_.time()).functionObjects().movePoints(mesh_);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -1398,9 +1400,6 @@ bool Foam::fvMeshStitcher::connect
|
||||
// Prevent hangs caused by processor cyclic patches using mesh geometry
|
||||
mesh_.deltaCoeffs();
|
||||
|
||||
meshObject::movePoints<fvMesh>(mesh_);
|
||||
meshObject::movePoints<lduMesh>(mesh_);
|
||||
|
||||
if (coupled && geometric)
|
||||
{
|
||||
const volScalarField::Internal o(openness());
|
||||
@ -1504,6 +1503,11 @@ bool Foam::fvMeshStitcher::connect
|
||||
Info<< decrIndent;
|
||||
}
|
||||
|
||||
meshObject::movePoints<fvMesh>(mesh_);
|
||||
meshObject::movePoints<lduMesh>(mesh_);
|
||||
|
||||
const_cast<Time&>(mesh_.time()).functionObjects().movePoints(mesh_);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -1564,6 +1568,8 @@ void Foam::fvMeshStitcher::reconnect(const bool geometric) const
|
||||
|
||||
meshObject::movePoints<fvMesh>(mesh_);
|
||||
meshObject::movePoints<lduMesh>(mesh_);
|
||||
|
||||
const_cast<Time&>(mesh_.time()).functionObjects().movePoints(mesh_);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -30,6 +30,7 @@ License
|
||||
#include "mergePoints.H"
|
||||
#include "indirectPrimitivePatch.H"
|
||||
#include "PatchTools.H"
|
||||
#include "fvMeshStitcher.H"
|
||||
#include "polyTopoChangeMap.H"
|
||||
#include "polyMeshMap.H"
|
||||
#include "addToRunTimeSelectionTable.H"
|
||||
@ -442,7 +443,7 @@ void Foam::functionObjects::fieldValues::surfaceFieldValue::initialise
|
||||
}
|
||||
}
|
||||
|
||||
if (nFaces_ == 0)
|
||||
if (nFaces_ == 0 && (!mesh_.stitcher().stitches() || !mesh_.conformal()))
|
||||
{
|
||||
FatalErrorInFunction
|
||||
<< type() << " " << name() << ": "
|
||||
@ -826,7 +827,8 @@ void Foam::functionObjects::fieldValues::surfaceFieldValue::movePoints
|
||||
{
|
||||
if (&mesh == &mesh_)
|
||||
{
|
||||
// It may be necessary to reset if the mesh moves
|
||||
// It may be necessary to reset if the mesh moves. The total area might
|
||||
// change, as might non-conformal faces.
|
||||
initialise(dict_);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user