34 template<
class RhoFieldType>
35 void Foam::MRFZone::makeRelativeRhoFlux
37 const RhoFieldType&
rho,
53 label facei = internalFaces_[i];
54 phii[facei] -=
rho[facei]*(
Omega ^ (Cfi[facei] - origin_)) & Sfi[facei];
57 makeRelativeRhoFlux(
rho.boundaryField(), phi.boundaryFieldRef());
61 template<
class RhoFieldType>
62 void Foam::MRFZone::makeRelativeRhoFlux
64 const RhoFieldType&
rho,
65 FieldField<fvsPatchField, scalar>& phiBf
71 const vector Omega = this->Omega();
75 if (!phiBf[
patchi].fixesValue())
81 phiBf[
patchi][patchFacei] -=
83 *(Omega ^ (Cf.boundaryField()[
patchi][patchFacei] - origin_))
84 & Sf.boundaryField()[
patchi][patchFacei];
91 template<
class RhoFieldType>
92 void Foam::MRFZone::makeRelativeRhoFlux
94 const RhoFieldType&
rho,
102 const vector Omega = this->Omega();
110 * (Omega ^ (Cf.boundaryField()[
patchi][patchFacei] - origin_))
111 & Sf.boundaryField()[
patchi][patchFacei];
116 template<
class RhoFieldType>
117 void Foam::MRFZone::makeAbsoluteRhoFlux
119 const RhoFieldType&
rho,
126 const vector Omega = this->Omega();
135 const label facei = internalFaces_[i];
136 phii[facei] +=
rho[facei]*(Omega ^ (Cfi[facei] - origin_)) & Sfi[facei];
143 if (!phiBf[
patchi].fixesValue())
149 phiBf[
patchi][patchFacei] +=
151 *(Omega ^ (Cf.boundaryField()[
patchi][patchFacei] - origin_))
152 & Sf.boundaryField()[
patchi][patchFacei];
169 phii[internalFaces_[i]] =
Zero;
#define forAll(list, i)
Loop across all elements in list.
Pre-declare SubField and related Field type.
Generic GeometricBoundaryField class.
Generic GeometricField class.
Internal::FieldType & primitiveFieldRef()
Return a reference to the primitive field.
GeometricBoundaryField< Type, PatchField, GeoMesh > Boundary
Type of the boundary field.
Boundary & boundaryFieldRef()
Return a reference to the boundary field.
vector Omega() const
Return the current Omega vector.
void zero(SurfaceField< Type > &phi) const
Zero the MRF region of the given field.
const surfaceVectorField & Cf() const
Return face centres.
const surfaceVectorField & Sf() const
Return cell face area vectors.
A special matrix type and solver, designed for finite volume solutions of scalar equations.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
SurfaceField< scalar > surfaceScalarField
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Vector< scalar > vector
A scalar version of the templated Vector.
Field< vector > vectorField
Specialisation of Field<T> for vector.
SurfaceField< vector > surfaceVectorField