1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | foam-extend: Open Source CFD
5 \\ / A nd | For copyright notice see file Copyright
7 -------------------------------------------------------------------------------
9 This file is part of foam-extend.
11 foam-extend is free software: you can redistribute it and/or modify it
12 under the terms of the GNU General Public License as published by the
13 Free Software Foundation, either version 3 of the License, or (at your
14 option) any later version.
16 foam-extend is distributed in the hope that it will be useful, but
17 WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 General Public License for more details.
21 You should have received a copy of the GNU General Public License
22 along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
25 chtRcThermalDiffusivitySlaveFvPatchScalarField
28 Region couple patch field taking radiation into account
31 Henrik Rusche, Wikki GmbH. All rights reserved
34 chtRcThermalDiffusivitySlaveFvPatchScalarField.C
36 \*---------------------------------------------------------------------------*/
38 #ifndef chtRcThermalDiffusivitySlaveFvPatchScalarField_H
39 #define chtRcThermalDiffusivitySlaveFvPatchScalarField_H
41 #include "chtRegionCoupleBase.H"
43 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
48 class chtThermalDiffusivityRegionCoupleFvPatchScalarField;
49 class chtTemperatureRegionCoupleFvPatchScalarField;
51 /*---------------------------------------------------------------------------*\
52 Class chtRcThermalDiffusivitySlaveFvPatchScalarField Declaration
53 \*---------------------------------------------------------------------------*/
55 class chtRcThermalDiffusivitySlaveFvPatchScalarField
57 public chtRegionCoupleBase
63 //- Runtime type information
64 TypeName("chtRcThermalDiffusivitySlave");
69 //- Construct from patch and internal field
70 chtRcThermalDiffusivitySlaveFvPatchScalarField
73 const DimensionedField<scalar, volMesh>&
76 //- Construct from patch, internal field and dictionary
77 chtRcThermalDiffusivitySlaveFvPatchScalarField
80 const DimensionedField<scalar, volMesh>&,
84 //- Construct by mapping given chtRcThermalDiffusivitySlaveFvPatchScalarField onto a new patch
85 chtRcThermalDiffusivitySlaveFvPatchScalarField
87 const chtRcThermalDiffusivitySlaveFvPatchScalarField&,
89 const DimensionedField<scalar, volMesh>&,
90 const fvPatchFieldMapper&
93 //- Construct as copy setting internal field reference
94 chtRcThermalDiffusivitySlaveFvPatchScalarField
96 const chtRcThermalDiffusivitySlaveFvPatchScalarField&,
97 const DimensionedField<scalar, volMesh>&
100 //- Construct and return a clone
101 virtual tmp<fvPatchScalarField> clone() const
103 return tmp<fvPatchScalarField>
105 new chtRcThermalDiffusivitySlaveFvPatchScalarField(*this)
109 //- Construct and return a clone setting internal field reference
110 virtual tmp<fvPatchScalarField> clone
112 const DimensionedField<scalar, volMesh>& iF
115 return tmp<fvPatchScalarField>
117 new chtRcThermalDiffusivitySlaveFvPatchScalarField(*this, iF)
126 //- Return shadow patch field
127 virtual const chtRegionCoupleBase& shadowPatchField() const;
130 // Evaluation functions
132 //- Evaluate the patch field
133 virtual void updateCoeffs();
135 //- Evaluate the patch field
136 virtual void evaluate(const Pstream::commsTypes commsType);
140 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
142 } // End namespace Foam
144 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
148 // ************************************************************************* //