26volScalarField rAU(1.0 / UEqn.A());
28volVectorField HbyA(constrainHbyA(rAU* UEqn.H(), U, p));
29surfaceScalarField phiHbyA
33 + MRF.zeroFilter(fvc::interpolate(rAU) * fvc::ddtCorr(U, phi, _Uf))
36MRF.makeRelative(phiHbyA);
40 fvc::makeRelative(phiHbyA, U);
41 adjustPhi(phiHbyA, U, p);
42 fvc::makeAbsolute(phiHbyA, U);
45tmp<volScalarField> rAtU(rAU);
47if (pimple.consistent())
49 rAtU = 1.0 /
max(1.0 / rAU - UEqn.H1(), 0.1 / rAU);
51 fvc::interpolate(rAtU() - rAU) * fvc::snGrad(p) * mesh.magSf();
52 HbyA -= (rAU - rAtU()) * fvc::grad(p);
55if (pimple.nCorrPISO() <= 1)
61constrainPressure(p, U, phiHbyA, rAtU(), MRF);
64while (pimple.correctNonOrthogonal())
69 fvm::laplacian(rAtU(), p) == fvc::div(phiHbyA)
71 pEqn.setReference(pRefCell, pRefValue);
72 pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
74 if (pimple.finalNonOrthogonalIter())
76 phi = phiHbyA - pEqn.flux();
80#include "continuityErrs.H"
85U = HbyA - rAtU() * fvc::grad(p);
86U.correctBoundaryConditions();
90fvc::correctUf(_Uf, U, phi);
93fvc::makeRelative(phi, U);
T max(Eigen::SparseMatrix< T > &mat, label &ind_row, label &ind_col)
Find the maximum of a sparse Matrix (Useful for DEIM).