fvMeshStitchers::moving: Prevent communication missmatch

The sub mesh on which mesh fluxes are corrected potentially only exists
on a small subset of the processors. This was causing issues when
processor boundaries were evaluated as this triggered the construction
of weights and delta coefficients on only some of the processors,
causing a communications missmatch. This has been resolved by a
pre-emptive call to construct the surface interpolation coefficients.
This commit is contained in:
Will Bainbridge
2022-05-25 12:44:14 +01:00
parent 744924bf69
commit c58fa1c075

View File

@ -297,6 +297,7 @@ void Foam::fvMeshStitchers::moving::internalFaceCorrectMeshPhi
fvMeshSubset subsetter(mesh());
subsetter.setLargeCellSubset(ownerCoupledCellSet());
const fvMesh& subMesh = subsetter.subMesh();
subMesh.deltaCoeffs();
// Determine the disconnected regions of the sub mesh
const regionSplit subMeshRegions(subMesh);