BUG: correctPhi: reference cells could become -1. Part fix for #507.

This commit is contained in:
mattijs
2017-06-26 09:52:26 +01:00
parent 0d3ada09f5
commit a22d9fe760
2 changed files with 44 additions and 11 deletions

View File

@ -86,9 +86,25 @@ if (mesh.changing())
fvm::laplacian(rAUf, pcorr) == fvc::div(phi) fvm::laplacian(rAUf, pcorr) == fvc::div(phi)
); );
//pcorrEqn.setReference(refCellI2, 0.0, true);
scalarList values(nZones, 0.0); // Only set reference for cells that are CALCULATED
pcorrEqn.setReferences(refCells, values, true); {
DynamicList<label> validCells(refCells.size());
forAll(refCells, zoneId)
{
if (refCells[zoneId] != -1)
{
validCells.append(refCells[zoneId]);
}
}
pcorrEqn.setReferences
(
validCells,
scalarList(validCells.size(), 0.0),
true
);
}
const dictionary& d = mesh.solver const dictionary& d = mesh.solver
( (
@ -97,6 +113,7 @@ if (mesh.changing())
pimple.finalInnerIter() pimple.finalInnerIter()
) )
); );
//Bypass virtual layer
mesh.fvMesh::solve(pcorrEqn, d); mesh.fvMesh::solve(pcorrEqn, d);
if (pimple.finalNonOrthogonalIter()) if (pimple.finalNonOrthogonalIter())

View File

@ -96,9 +96,25 @@
fvm::laplacian(rAUf, pcorr) == fvc::div(phi) fvm::laplacian(rAUf, pcorr) == fvc::div(phi)
); );
//pcorrEqn.setReference(refCellI2, 0, true); // Only set reference for cells that are CALCULATED
scalarList values(nZones, 0.0); {
pcorrEqn.setReferences(refCells, values, true); DynamicList<label> validCells(refCells.size());
forAll(refCells, zoneId)
{
if (refCells[zoneId] != -1)
{
validCells.append(refCells[zoneId]);
}
}
pcorrEqn.setReferences
(
validCells,
scalarList(validCells.size(), 0.0),
true
);
}
const dictionary& d = mesh.solver const dictionary& d = mesh.solver
( (
@ -117,9 +133,9 @@
} }
} }
if (runTime.outputTime()) //if (runTime.outputTime())
{ //{
volScalarField("contPhiPcorr", fvc::div(phi)).write(); // volScalarField("contPhiPcorr", fvc::div(phi)).write();
pcorr.write(); // pcorr.write();
} //}
} }