tmp<areaScalarField> faMatrix<scalar>::H() const { tmp<areaScalarField> tHphi ( new areaScalarField ( IOobject ( "H("+psi_.name()+')', psi_.instance(), psi_.db(), IOobject::NO_READ, IOobject::NO_WRITE ), psi_.mesh(), dimensions_/dimArea, zeroGradientFaPatchScalarField::typeName ) ); areaScalarField Hphi = tHphi(); Hphi.internalField() = (lduMatrix::H(psi_.internalField()) + source_); addBoundarySource(Hphi.internalField()); Hphi.internalField() /= psi_.mesh().S(); Hphi.correctBoundaryConditions(); return tHphi; }
Foam::tmp<Foam::volScalarField> Foam::fvMatrix<Foam::scalar>::H() const { tmp<volScalarField> tHphi ( new volScalarField ( IOobject ( "H("+psi_.name()+')', psi_.instance(), psi_.mesh(), IOobject::NO_READ, IOobject::NO_WRITE ), psi_.mesh(), dimensions_/dimVol, extrapolatedCalculatedFvPatchScalarField::typeName ) ); volScalarField& Hphi = tHphi.ref(); Hphi.primitiveFieldRef() = (lduMatrix::H(psi_.primitiveField()) + source_); addBoundarySource(Hphi.primitiveFieldRef()); Hphi.primitiveFieldRef() /= psi_.mesh().V(); Hphi.correctBoundaryConditions(); return tHphi; }