diff --git a/src/finiteVolume/Make/files b/src/finiteVolume/Make/files index c4bb131fd6..8200e8fdd8 100644 --- a/src/finiteVolume/Make/files +++ b/src/finiteVolume/Make/files @@ -139,7 +139,7 @@ $(derivedFvPatchFields)/codedFixedValue/codedFixedValueFvPatchFields.C $(derivedFvPatchFields)/codedMixed/codedMixedFvPatchFields.C $(derivedFvPatchFields)/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.C $(derivedFvPatchFields)/externalCoupledMixed/externalCoupledMixedFvPatchFields.C -$(derivedFvPatchFields)/fan/fanFvPatchFields.C +$(derivedFvPatchFields)/fanPressureJump/fanPressureJumpFvPatchScalarField.C $(derivedFvPatchFields)/fanPressure/fanPressureFvPatchScalarField.C $(derivedFvPatchFields)/fixedFluxPressure/fixedFluxPressureFvPatchScalarField.C $(derivedFvPatchFields)/fixedFluxExtrapolatedPressure/fixedFluxExtrapolatedPressureFvPatchScalarField.C diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.C deleted file mode 100644 index 64986874a4..0000000000 --- a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.C +++ /dev/null @@ -1,135 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "fanFvPatchField.H" - -// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // - -template -void Foam::fanFvPatchField::calcFanJump() -{ - if (this->cyclicPatch().owner()) - { - this->jump_ = this->jumpTable_->value(this->db().time().value()); - } -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -template -Foam::fanFvPatchField::fanFvPatchField -( - const fvPatch& p, - const DimensionedField& iF -) -: - uniformJumpFvPatchField(p, iF), - phiName_("phi"), - rhoName_("rho") -{} - - -template -Foam::fanFvPatchField::fanFvPatchField -( - const fvPatch& p, - const DimensionedField& iF, - const dictionary& dict -) -: - uniformJumpFvPatchField(p, iF, dict), - phiName_(dict.lookupOrDefault("phi", "phi")), - rhoName_(dict.lookupOrDefault("rho", "rho")) -{} - - -template -Foam::fanFvPatchField::fanFvPatchField -( - const fanFvPatchField& ptf, - const fvPatch& p, - const DimensionedField& iF, - const fvPatchFieldMapper& mapper -) -: - uniformJumpFvPatchField(ptf, p, iF, mapper), - phiName_(ptf.phiName_), - rhoName_(ptf.rhoName_) -{} - - -template -Foam::fanFvPatchField::fanFvPatchField -( - const fanFvPatchField& ptf -) -: - uniformJumpFvPatchField(ptf), - phiName_(ptf.phiName_), - rhoName_(ptf.rhoName_) -{} - - -template -Foam::fanFvPatchField::fanFvPatchField -( - const fanFvPatchField& ptf, - const DimensionedField& iF -) -: - uniformJumpFvPatchField(ptf, iF), - phiName_(ptf.phiName_), - rhoName_(ptf.rhoName_) -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -template -void Foam::fanFvPatchField::updateCoeffs() -{ - if (this->updated()) - { - return; - } - - calcFanJump(); - - // Call fixedJump variant - uniformJump will overwrite the jump value - fixedJumpFvPatchField::updateCoeffs(); -} - - -template -void Foam::fanFvPatchField::write(Ostream& os) const -{ - uniformJumpFvPatchField::write(os); - this->template writeEntryIfDifferent(os, "phi", "phi", phiName_); - this->template writeEntryIfDifferent(os, "rho", "rho", rhoName_); -} - - -// ************************************************************************* // diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFields.C b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFields.C deleted file mode 100644 index f5d33b715c..0000000000 --- a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFields.C +++ /dev/null @@ -1,99 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "fanFvPatchFields.H" -#include "addToRunTimeSelectionTable.H" -#include "volFields.H" -#include "surfaceFields.H" -#include "Tuple2.H" -#include "PolynomialEntry.H" - -// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // - -template<> -void Foam::fanFvPatchField::calcFanJump() -{ - if (this->cyclicPatch().owner()) - { - const surfaceScalarField& phi = - db().lookupObject(phiName_); - - const fvsPatchField& phip = - patch().patchField(phi); - - scalarField Un(max(phip/patch().magSf(), scalar(0))); - - if (phi.dimensions() == dimDensity*dimVelocity*dimArea) - { - Un /= patch().lookupPatchField(rhoName_); - } - - this->jump_ = max(this->jumpTable_->value(Un), scalar(0)); - } -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -template<> -Foam::fanFvPatchField::fanFvPatchField -( - const fvPatch& p, - const DimensionedField& iF, - const dictionary& dict -) -: - uniformJumpFvPatchField(p, iF), - phiName_(dict.lookupOrDefault("phi", "phi")), - rhoName_(dict.lookupOrDefault("rho", "rho")) -{ - if (this->cyclicPatch().owner()) - { - this->jumpTable_ = Function1::New("jumpTable", dict); - } - - if (dict.found("value")) - { - fvPatchScalarField::operator= - ( - scalarField("value", dict, p.size()) - ); - } - else - { - this->evaluate(Pstream::commsTypes::blocking); - } -} - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - makeTemplatePatchTypeField(scalar, fan); -} - - -// ************************************************************************* // diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFields.H b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFields.H deleted file mode 100644 index ad86908dc8..0000000000 --- a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFields.H +++ /dev/null @@ -1,49 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#ifndef fanFvPatchFields_H -#define fanFvPatchFields_H - -#include "fanFvPatchField.H" -#include "fieldTypes.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -makePatchTypeFieldTypedefs(fan); - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFieldsFwd.H b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFieldsFwd.H deleted file mode 100644 index b9775f9fcc..0000000000 --- a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFieldsFwd.H +++ /dev/null @@ -1,50 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | Website: https://openfoam.org - \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#ifndef fanFvPatchFieldsFwd_H -#define fanFvPatchFieldsFwd_H - -#include "fieldTypes.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -template class fanFvPatchField; - -makePatchTypeFieldTypedefs(fan); - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fanPressureJump/fanPressureJumpFvPatchScalarField.C b/src/finiteVolume/fields/fvPatchFields/derived/fanPressureJump/fanPressureJumpFvPatchScalarField.C new file mode 100644 index 0000000000..a9314fb7de --- /dev/null +++ b/src/finiteVolume/fields/fvPatchFields/derived/fanPressureJump/fanPressureJumpFvPatchScalarField.C @@ -0,0 +1,228 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | Website: https://openfoam.org + \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation + \\/ M anipulation | +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see . + +\*---------------------------------------------------------------------------*/ + +#include "fanPressureJumpFvPatchScalarField.H" +#include "addToRunTimeSelectionTable.H" +#include "volFields.H" +#include "surfaceFields.H" + +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // + +void Foam::fanPressureJumpFvPatchScalarField::calcFanJump() +{ + const fvsPatchField& phip = + patch().lookupPatchField(phiName_); + + const bool massBasedFlux = + phip.internalField().dimensions() == dimDensity*dimVelocity*dimArea; + + const scalar dir = reverse_ ? -1 : 1; + + //- Jump table is defined in backward compatibility mode + if(jumpTable_.valid()) + { + //- Patch normal velocity field + scalarField Un(max(dir*phip/patch().magSf(), scalar(0))); + + if (massBasedFlux) + { + const fvPatchField& rhop = + patch().lookupPatchField(rhoName_); + + Un /= rhop; + } + + jump_ = dir*max(jumpTable_->value(Un), scalar(0)); + } + else + { + scalar volFlowRate = 0; + + if (massBasedFlux) + { + const scalarField& rhop = + patch().lookupPatchField(rhoName_); + + volFlowRate = gSum(phip/rhop); + } + else + { + volFlowRate = gSum(phip); + } + + + jump_ = dir*max(fanCurve_->value(max(dir*volFlowRate, 0)), 0); + } +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::fanPressureJumpFvPatchScalarField::fanPressureJumpFvPatchScalarField +( + const fvPatch& p, + const DimensionedField& iF +) +: + fixedJumpFvPatchScalarField(p, iF), + fanCurve_(), + jumpTable_(), + reverse_(false), + phiName_("phi"), + rhoName_("rho") +{} + + +Foam::fanPressureJumpFvPatchScalarField::fanPressureJumpFvPatchScalarField +( + const fvPatch& p, + const DimensionedField& iF, + const dictionary& dict +) +: + fixedJumpFvPatchScalarField(p, iF), + fanCurve_(), + jumpTable_(), + reverse_(dict.lookupOrDefault("reverse", false)), + phiName_(dict.lookupOrDefault("phi", "phi")), + rhoName_(dict.lookupOrDefault("rho", "rho")) +{ + if (cyclicPatch().owner()) + { + if (dict.found("jumpTable")) + { + //- backward compatibility model + jumpTable_ = Function1::New("jumpTable", dict); + } + else + { + fanCurve_ = Function1::New("fanCurve", dict); + } + } + + if (dict.found("value")) + { + fvPatchScalarField::operator= + ( + scalarField("value", dict, p.size()) + ); + } + else + { + evaluate(Pstream::commsTypes::blocking); + } +} + + +Foam::fanPressureJumpFvPatchScalarField::fanPressureJumpFvPatchScalarField +( + const fanPressureJumpFvPatchScalarField& ptf, + const fvPatch& p, + const DimensionedField& iF, + const fvPatchFieldMapper& mapper +) +: + fixedJumpFvPatchScalarField(ptf, p, iF, mapper), + fanCurve_(ptf.fanCurve_, false), + jumpTable_(ptf.jumpTable_, false), + reverse_(ptf.reverse_), + phiName_(ptf.phiName_), + rhoName_(ptf.rhoName_) +{} + + +Foam::fanPressureJumpFvPatchScalarField::fanPressureJumpFvPatchScalarField +( + const fanPressureJumpFvPatchScalarField& ptf +) +: + fixedJumpFvPatchScalarField(ptf), + fanCurve_(ptf.fanCurve_, false), + jumpTable_(ptf.jumpTable_, false), + reverse_(ptf.reverse_), + phiName_(ptf.phiName_), + rhoName_(ptf.rhoName_) +{} + + +Foam::fanPressureJumpFvPatchScalarField::fanPressureJumpFvPatchScalarField +( + const fanPressureJumpFvPatchScalarField& ptf, + const DimensionedField& iF +) +: + fixedJumpFvPatchScalarField(ptf, iF), + fanCurve_(ptf.fanCurve_, false), + jumpTable_(ptf.jumpTable_, false), + reverse_(ptf.reverse_), + phiName_(ptf.phiName_), + rhoName_(ptf.rhoName_) +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +void Foam::fanPressureJumpFvPatchScalarField::updateCoeffs() +{ + if (updated()) + { + return; + } + + if (cyclicPatch().owner()) + { + calcFanJump(); + } + + fixedJumpFvPatchScalarField::updateCoeffs(); +} + + +void Foam::fanPressureJumpFvPatchScalarField::write(Ostream& os) const +{ + fixedJumpFvPatchScalarField::write(os); + + if (jumpTable_.valid()) jumpTable_->writeData(os); + if (fanCurve_.valid()) fanCurve_->writeData(os); + + writeEntryIfDifferent(os, "reverse", false, reverse_); + writeEntryIfDifferent(os, "phi", "phi", phiName_); + writeEntryIfDifferent(os, "rho", "rho", rhoName_); +} + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + makePatchTypeField + ( + fvPatchScalarField, + fanPressureJumpFvPatchScalarField + ); +}; + + +// ************************************************************************* // diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fanPressureJump/fanPressureJumpFvPatchScalarField.H similarity index 61% rename from src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.H rename to src/finiteVolume/fields/fvPatchFields/derived/fanPressureJump/fanPressureJumpFvPatchScalarField.H index 39c649a23e..e78ac2cfd4 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fanPressureJump/fanPressureJumpFvPatchScalarField.H @@ -22,22 +22,29 @@ License along with OpenFOAM. If not, see . Class - Foam::fanFvPatchField + Foam::fanPressureJumpFvPatchScalarField Description - This boundary condition provides a jump condition, using the \c cyclic - condition as a base. + This boundary condition provides a pressure jump condition, using + the \c cyclic condition as a base. The jump is specified as a \c Function1 type, to enable the use of, e.g. - constant, polynomial, table values. + constant, polynomial, table values. This boundary condition can operate + in two modes - standard and backward compatibility. + In standard mode, jump is specified as a function of total volumetric + flow rate through the patch. In backward compatibility mode, the boundary + conditions serves as a direct replacement for the fanFvPatchField, where + jump is defined as a function of local velocity. Usage \table Property | Description | Required | Default value patchType | underlying patch type should be \c cyclic| yes | - jumpTable | jump data, e.g. \c csvFile | yes | + fanCurve | fan curve, e.g. \c csvFile | yes | + jumpTable | jump data (backward compatibility mode) | no | + reverse | reverse jump direction | no | false phi | flux field name | no | phi - rho | density field name | no | none + rho | density field name | no | rho \endtable Example of the boundary condition specification: @@ -46,14 +53,14 @@ Usage { type fan; patchType cyclic; - jumpTable csvFile; + fanCurve csvFile; csvFileCoeffs { hasHeaderLine 1; refColumn 0; componentColumns 1(1); separator ","; - file "$FOAM_CASE/constant/pressureVsU"; + file "$FOAM_CASE/constant/pressureVsQ"; } value uniform 0; } @@ -69,17 +76,14 @@ See also Foam::Function1Types SourceFiles - fanFvPatchField.C - fanFvPatchFields.H - fanFvPatchFields.C - fanFvPatchFieldsFwd.H + fanPressureJumpFvPatchScalarField.C \*---------------------------------------------------------------------------*/ -#ifndef fanFvPatchField_H -#define fanFvPatchField_H +#ifndef fanPressureJumpFvPatchScalarField_H +#define fanPressureJumpFvPatchScalarField_H -#include "uniformJumpFvPatchField.H" +#include "fixedJumpFvPatchFields.H" #include "Function1.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -88,16 +92,24 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class fanFvPatchField Declaration + Class fanPressureJumpFvPatchScalarField Declaration \*---------------------------------------------------------------------------*/ -template -class fanFvPatchField +class fanPressureJumpFvPatchScalarField : - public uniformJumpFvPatchField + public fixedJumpFvPatchScalarField { // Private data + //- Fan curve + autoPtr> fanCurve_; + + //- Jump table (backward compatibility) + autoPtr> jumpTable_; + + //- Set true to reverse jump direction + Switch reverse_; + //- Name of the flux transporting the field word phiName_; @@ -115,66 +127,66 @@ class fanFvPatchField public: //- Runtime type information - TypeName("fan"); + TypeName("fanPressureJump"); // Constructors //- Construct from patch and internal field - fanFvPatchField + fanPressureJumpFvPatchScalarField ( const fvPatch&, - const DimensionedField& + const DimensionedField& ); //- Construct from patch, internal field and dictionary - fanFvPatchField + fanPressureJumpFvPatchScalarField ( const fvPatch&, - const DimensionedField&, + const DimensionedField&, const dictionary& ); - //- Construct by mapping given fanFvPatchField onto a new patch - fanFvPatchField + //- Construct by mapping given patch onto a new patch + fanPressureJumpFvPatchScalarField ( - const fanFvPatchField&, + const fanPressureJumpFvPatchScalarField&, const fvPatch&, - const DimensionedField&, + const DimensionedField&, const fvPatchFieldMapper& ); //- Construct as copy - fanFvPatchField + fanPressureJumpFvPatchScalarField ( - const fanFvPatchField& + const fanPressureJumpFvPatchScalarField& ); //- Construct and return a clone - virtual tmp> clone() const + virtual tmp clone() const { - return tmp> + return tmp ( - new fanFvPatchField(*this) + new fanPressureJumpFvPatchScalarField(*this) ); } //- Construct as copy setting internal field reference - fanFvPatchField + fanPressureJumpFvPatchScalarField ( - const fanFvPatchField&, - const DimensionedField& + const fanPressureJumpFvPatchScalarField&, + const DimensionedField& ); //- Construct and return a clone setting internal field reference - virtual tmp> clone + virtual tmp> clone ( - const DimensionedField& iF + const DimensionedField& iF ) const { - return tmp> + return tmp> ( - new fanFvPatchField(*this, iF) + new fanPressureJumpFvPatchScalarField(*this, iF) ); } @@ -189,31 +201,12 @@ public: }; -//- Specialisation of the jump-condition for the pressure -template<> -void fanFvPatchField::calcFanJump(); - -template<> -fanFvPatchField::fanFvPatchField -( - const fvPatch&, - const DimensionedField&, - const dictionary& -); - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#ifdef NoRepository - #include "fanFvPatchField.C" -#endif - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - #endif // ************************************************************************* //