emptyFvPatchField.C
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration |
5  \\ / A nd | www.openfoam.com
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8  Copyright (C) 2011-2016 OpenFOAM Foundation
9 -------------------------------------------------------------------------------
10 License
11  This file is part of OpenFOAM.
12 
13  OpenFOAM is free software: you can redistribute it and/or modify it
14  under the terms of the GNU General Public License as published by
15  the Free Software Foundation, either version 3 of the License, or
16  (at your option) any later version.
17 
18  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21  for more details.
22 
23  You should have received a copy of the GNU General Public License
24  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25 
26 \*---------------------------------------------------------------------------*/
27 
29 #include "fvPatchFieldMapper.H"
30 
31 // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
32 
33 template<class Type>
35 (
36  const fvPatch& p,
38 )
39 :
40  fvPatchField<Type>(p, iF, Field<Type>(0))
41 {}
42 
43 
44 template<class Type>
46 (
48  const fvPatch& p,
50  const fvPatchFieldMapper&
51 )
52 :
53  fvPatchField<Type>(p, iF, Field<Type>(0))
54 {
55  if (!isType<emptyFvPatch>(p))
56  {
58  << "\n patch type '" << p.type()
59  << "' not constraint type '" << typeName << "'"
60  << "\n for patch " << p.name()
61  << " of field " << this->internalField().name()
62  << " in file " << this->internalField().objectPath()
64  }
65 }
66 
67 
68 template<class Type>
70 (
71  const fvPatch& p,
72  const DimensionedField<Type, volMesh>& iF,
73  const dictionary& dict
74 )
75 :
76  fvPatchField<Type>(p, iF, Field<Type>(0))
77 {
78  if (!isType<emptyFvPatch>(p))
79  {
81  << "\n patch type '" << p.type()
82  << "' not constraint type '" << typeName << "'"
83  << "\n for patch " << p.name()
84  << " of field " << this->internalField().name()
85  << " in file " << this->internalField().objectPath()
87  }
88 }
89 
90 
91 template<class Type>
93 (
94  const emptyFvPatchField<Type>& ptf
95 )
96 :
97  fvPatchField<Type>
98  (
99  ptf.patch(),
100  ptf.internalField(),
101  Field<Type>(0)
102  )
103 {}
104 
105 
106 template<class Type>
108 (
109  const emptyFvPatchField<Type>& ptf,
111 )
112 :
113  fvPatchField<Type>(ptf.patch(), iF, Field<Type>(0))
114 {}
115 
116 
117 // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
118 
119 template<class Type>
121 {
122  // Check moved to checkMesh.
123  // Test here fails if multiple empty patches.
124 }
125 
126 
127 // ************************************************************************* //
dictionary dict
errorManipArg< error, int > exit(error &err, const int errNo=1)
Definition: errorManip.H:125
error FatalError
Error stream (stdout output on all processes), with additional &#39;FOAM FATAL ERROR&#39; header text and sta...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Definition: error.H:598
void updateCoeffs()
Update the coefficients associated with the patch field.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition: fvPatch.H:70
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
static const char *const typeName
Typename for Field.
Definition: Field.H:86
Generic templated field type.
Definition: Field.H:62
emptyFvPatchField(const fvPatch &, const DimensionedField< Type, volMesh > &)
Construct from patch and internal field.
A FieldMapper for finite-volume patch fields.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
Definition: error.H:627
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Definition: areaFieldsFwd.H:42
const DimensionedField< Type, volMesh > & internalField() const noexcept
Return const-reference to the dimensioned internal field.
Definition: fvPatchField.H:662
const std::string patch
OpenFOAM patch number as a std::string.
This boundary condition provides an &#39;empty&#39; condition for reduced dimensions cases, i.e. 1- and 2-D geometries. Apply this condition to patches whose normal is aligned to geometric directions that do not constitue solution directions.
volScalarField & p
IOerror FatalIOError
Error stream (stdout output on all processes), with additional &#39;FOAM FATAL IO ERROR&#39; header text and ...