facDiv.H
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) 2016-2017 Wikki Ltd
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 InNamespace
27  Foam::fac
28 
29 Description
30  Calculate the divergence of the given field.
31 
32 SourceFiles
33  facDiv.C
34 
35 \*---------------------------------------------------------------------------*/
36 
37 
38 #ifndef facDiv_H
39 #define facDiv_H
40 
41 #include "areaFieldsFwd.H"
42 #include "edgeFieldsFwd.H"
43 
44 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45 
46 namespace Foam
47 {
48 
49 /*---------------------------------------------------------------------------*\
50  Namespace fac functions Declaration
51 \*---------------------------------------------------------------------------*/
52 
53 namespace fac
54 {
55  template<class Type>
56  tmp<GeometricField<Type, faPatchField, areaMesh>> div
57  (
58  const GeometricField<Type, faePatchField, edgeMesh>&
59  );
60 
61  template<class Type>
62  tmp<GeometricField<Type, faPatchField, areaMesh>> div
63  (
64  const tmp<GeometricField<Type, faePatchField, edgeMesh>>&
65  );
66 
67 
68  template<class Type>
69  tmp
70  <
71  GeometricField
72  <typename innerProduct<vector, Type>::type, faPatchField, areaMesh>
73  > div
74  (
75  const GeometricField<Type, faPatchField, areaMesh>&,
76  const word& name
77  );
78 
79  template<class Type>
80  tmp
81  <
82  GeometricField
83  <typename innerProduct<vector, Type>::type, faPatchField, areaMesh>
84  > div
85  (
86  const tmp<GeometricField<Type, faPatchField, areaMesh>>&,
87  const word& name
88  );
89 
90 
91  template<class Type>
92  tmp
93  <
94  GeometricField
95  <typename innerProduct<vector, Type>::type, faPatchField, areaMesh>
96  > div
97  (
98  const GeometricField<Type, faPatchField, areaMesh>&
99  );
100 
101  template<class Type>
102  tmp
103  <
104  GeometricField
105  <typename innerProduct<vector, Type>::type, faPatchField, areaMesh>
106  > div
107  (
108  const tmp<GeometricField<Type, faPatchField, areaMesh>>&
109  );
110 
111 
112  template<class Type>
113  tmp<GeometricField<Type, faPatchField, areaMesh>> div
114  (
115  const edgeScalarField&,
116  const GeometricField<Type, faPatchField, areaMesh>&,
117  const word& name
118  );
119 
120  template<class Type>
121  tmp<GeometricField<Type, faPatchField, areaMesh>> div
122  (
123  const tmp<edgeScalarField>&,
124  const GeometricField<Type, faPatchField, areaMesh>&,
125  const word& name
126  );
127 
128  template<class Type>
129  tmp<GeometricField<Type, faPatchField, areaMesh>> div
130  (
131  const edgeScalarField&,
132  const tmp<GeometricField<Type, faPatchField, areaMesh>>&,
133  const word& name
134  );
135 
136  template<class Type>
137  tmp<GeometricField<Type, faPatchField, areaMesh>> div
138  (
139  const tmp<edgeScalarField>&,
140  const tmp<GeometricField<Type, faPatchField, areaMesh>>&,
141  const word& name
142  );
143 
144 
145  template<class Type>
146  tmp<GeometricField<Type, faPatchField, areaMesh>> div
147  (
148  const edgeScalarField&,
149  const GeometricField<Type, faPatchField, areaMesh>&
150  );
151 
152  template<class Type>
153  tmp<GeometricField<Type, faPatchField, areaMesh>> div
154  (
155  const tmp<edgeScalarField>&,
156  const GeometricField<Type, faPatchField, areaMesh>&
157  );
158 
159  template<class Type>
160  tmp<GeometricField<Type, faPatchField, areaMesh>> div
161  (
162  const edgeScalarField&,
163  const tmp<GeometricField<Type, faPatchField, areaMesh>>&
164  );
165 
166  template<class Type>
167  tmp<GeometricField<Type, faPatchField, areaMesh>> div
168  (
169  const tmp<edgeScalarField>&,
170  const tmp<GeometricField<Type, faPatchField, areaMesh>>&
171  );
172 }
173 
174 
175 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
176 
177 } // End namespace Foam
178 
179 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
180 
181 #ifdef NoRepository
182  #include "facDiv.C"
183 #endif
184 
185 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
186 
187 #endif
188 
189 // ************************************************************************* //
facDiv.C
Foam::fac::div
tmp< GeometricField< Type, faPatchField, areaMesh > > div(const GeometricField< Type, faePatchField, edgeMesh > &ssf)
Definition: facDiv.C:50
areaFieldsFwd.H
Forwards and collection of common area field types.
Foam::edgeScalarField
GeometricField< scalar, faePatchField, edgeMesh > edgeScalarField
Definition: edgeFieldsFwd.H:52
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
fac
Calculate the second temporal derivative.
Foam::name
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
Definition: exprTraits.C:59
edgeFieldsFwd.H
Forwards for edge field types.
Foam::innerProduct< vector, Type >::type
typeOfRank< typename pTraits< vector >::cmptType, direction(pTraits< vector >::rank)+direction(pTraits< Type >::rank) - 2 >::type type
Definition: products.H:149