Merge branch 'master' of ssh://git.code.sf.net/p/foam-extend/foam-extend-3.2
[foam-extend-3.2.git] / src / finiteVolume / fields / fvPatchFields / basic / fixedValue / fixedValueFvPatchField.C
blobee407c29a4f22361e029153c97e3ddad770e1996
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | foam-extend: Open Source CFD
4    \\    /   O peration     | Version:     3.2
5     \\  /    A nd           | Web:         http://www.foam-extend.org
6      \\/     M anipulation  | For copyright notice see file Copyright
7 -------------------------------------------------------------------------------
8 License
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/>.
24 \*---------------------------------------------------------------------------*/
26 #include "fixedValueFvPatchField.H"
28 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
30 namespace Foam
33 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
35 template<class Type>
36 fixedValueFvPatchField<Type>::fixedValueFvPatchField
38     const fvPatch& p,
39     const DimensionedField<Type, volMesh>& iF
42     fvPatchField<Type>(p, iF)
46 template<class Type>
47 fixedValueFvPatchField<Type>::fixedValueFvPatchField
49     const fvPatch& p,
50     const DimensionedField<Type, volMesh>& iF,
51     const dictionary& dict
54     fvPatchField<Type>(p, iF, dict, true)
58 template<class Type>
59 fixedValueFvPatchField<Type>::fixedValueFvPatchField
61     const fixedValueFvPatchField<Type>& ptf,
62     const fvPatch& p,
63     const DimensionedField<Type, volMesh>& iF,
64     const fvPatchFieldMapper& mapper
67     fvPatchField<Type>(ptf, p, iF, mapper)
71 template<class Type>
72 fixedValueFvPatchField<Type>::fixedValueFvPatchField
74     const fixedValueFvPatchField<Type>& ptf
77     fvPatchField<Type>(ptf)
81 template<class Type>
82 fixedValueFvPatchField<Type>::fixedValueFvPatchField
84     const fixedValueFvPatchField<Type>& ptf,
85     const DimensionedField<Type, volMesh>& iF
88     fvPatchField<Type>(ptf, iF)
92 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
94 template<class Type>
95 tmp<Field<Type> > fixedValueFvPatchField<Type>::valueInternalCoeffs
97     const tmp<scalarField>&
98 ) const
100     return tmp<Field<Type> >
101     (
102         new Field<Type>(this->size(), pTraits<Type>::zero)
103     );
107 template<class Type>
108 tmp<Field<Type> > fixedValueFvPatchField<Type>::valueBoundaryCoeffs
110     const tmp<scalarField>&
111 ) const
113     return *this;
117 template<class Type>
118 tmp<Field<Type> > fixedValueFvPatchField<Type>::gradientInternalCoeffs() const
120     return -pTraits<Type>::one*this->patch().deltaCoeffs();
124 template<class Type>
125 tmp<Field<Type> > fixedValueFvPatchField<Type>::gradientBoundaryCoeffs() const
127     return this->patch().deltaCoeffs()*(*this);
131 template<class Type>
132 void fixedValueFvPatchField<Type>::write(Ostream& os) const
134     fvPatchField<Type>::write(os);
135     this->writeEntry("value", os);
139 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
141 } // End namespace Foam
143 // ************************************************************************* //