All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
fvmLaplacian.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration | Website: https://openfoam.org
5  \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8 License
9  This file is part of OpenFOAM.
10 
11  OpenFOAM is free software: you can redistribute it and/or modify it
12  under the terms of the GNU General Public License as published by
13  the Free Software Foundation, either version 3 of the License, or
14  (at your option) any later version.
15 
16  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19  for more details.
20 
21  You should have received a copy of the GNU General Public License
22  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23 
24 InNamespace
25  Foam::fvm
26 
27 Description
28  Calculate the matrix for the laplacian of the field.
29 
30 SourceFiles
31  fvmLaplacian.C
32 
33 \*---------------------------------------------------------------------------*/
34 
35 #ifndef fvmLaplacian_H
36 #define fvmLaplacian_H
37 
38 #include "volFieldsFwd.H"
39 #include "surfaceFieldsFwd.H"
40 #include "fvMatrix.H"
41 #include "zero.H"
42 #include "one.H"
43 
44 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45 
46 namespace Foam
47 {
48 
49 /*---------------------------------------------------------------------------*\
50  Namespace fvm functions Declaration
51 \*---------------------------------------------------------------------------*/
52 
53 namespace fvm
54 {
55  template<class Type>
56  tmp<fvMatrix<Type>> laplacian
57  (
58  const GeometricField<Type, fvPatchField, volMesh>&,
59  const word&
60  );
61 
62  template<class Type>
63  tmp<fvMatrix<Type>> laplacian
64  (
65  const GeometricField<Type, fvPatchField, volMesh>&
66  );
67 
68 
69  template<class Type>
70  tmp<fvMatrix<Type>> laplacian
71  (
72  const zero&,
73  const GeometricField<Type, fvPatchField, volMesh>&,
74  const word&
75  );
76 
77  template<class Type>
78  tmp<fvMatrix<Type>> laplacian
79  (
80  const zero&,
81  const GeometricField<Type, fvPatchField, volMesh>&
82  );
83 
84 
85  template<class Type>
86  tmp<fvMatrix<Type>> laplacian
87  (
88  const one&,
89  const GeometricField<Type, fvPatchField, volMesh>&,
90  const word&
91  );
92 
93  template<class Type>
94  tmp<fvMatrix<Type>> laplacian
95  (
96  const one&,
97  const GeometricField<Type, fvPatchField, volMesh>&
98  );
99 
100 
101  template<class Type, class GType>
102  tmp<fvMatrix<Type>> laplacian
103  (
104  const dimensioned<GType>&,
105  const GeometricField<Type, fvPatchField, volMesh>&,
106  const word&
107  );
108 
109  template<class Type, class GType>
110  tmp<fvMatrix<Type>> laplacian
111  (
112  const dimensioned<GType>&,
113  const GeometricField<Type, fvPatchField, volMesh>&
114  );
115 
116 
117  template<class Type, class GType>
118  tmp<fvMatrix<Type>> laplacian
119  (
120  const GeometricField<GType, fvPatchField, volMesh>&,
121  const GeometricField<Type, fvPatchField, volMesh>&,
122  const word&
123  );
124 
125  template<class Type, class GType>
126  tmp<fvMatrix<Type>> laplacian
127  (
128  const GeometricField<GType, fvPatchField, volMesh>&,
129  const GeometricField<Type, fvPatchField, volMesh>&
130  );
131 
132 
133  template<class Type, class GType>
134  tmp<fvMatrix<Type>> laplacian
135  (
136  const tmp<GeometricField<GType, fvPatchField, volMesh>>&,
137  const GeometricField<Type, fvPatchField, volMesh>&,
138  const word&
139  );
140 
141  template<class Type, class GType>
142  tmp<fvMatrix<Type>> laplacian
143  (
144  const tmp<GeometricField<GType, fvPatchField, volMesh>>&,
145  const GeometricField<Type, fvPatchField, volMesh>&
146  );
147 
148 
149  template<class Type, class GType>
150  tmp<fvMatrix<Type>> laplacian
151  (
152  const GeometricField<GType, fvsPatchField, surfaceMesh>&,
153  const GeometricField<Type, fvPatchField, volMesh>&,
154  const word&
155  );
156 
157  template<class Type, class GType>
158  tmp<fvMatrix<Type>> laplacian
159  (
160  const tmp<GeometricField<GType, fvsPatchField, surfaceMesh>>&,
161  const GeometricField<Type, fvPatchField, volMesh>&,
162  const word&
163  );
164 
165  template<class Type, class GType>
166  tmp<fvMatrix<Type>> laplacian
167  (
168  const GeometricField<GType, fvsPatchField, surfaceMesh>&,
169  const GeometricField<Type, fvPatchField, volMesh>&
170  );
171 
172  template<class Type, class GType>
173  tmp<fvMatrix<Type>> laplacian
174  (
175  const tmp<GeometricField<GType, fvsPatchField, surfaceMesh>>&,
176  const GeometricField<Type, fvPatchField, volMesh>&
177  );
178 }
179 
180 
181 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
182 
183 } // End namespace Foam
184 
185 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
186 
187 #ifdef NoRepository
188  #include "fvmLaplacian.C"
189 #endif
190 
191 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
192 
193 #endif
194 
195 // ************************************************************************* //
tmp< fvMatrix< Type > > laplacian(const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
Definition: fvmLaplacian.C:46
Namespace for OpenFOAM.