famLaplacian.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-------------------------------------------------------------------------------
10License
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
26InNamespace
27 Foam::fam
28
29Description
30 Calculate the matrix for the laplacian of the field.
31
32SourceFiles
33 famLaplacian.C
34
35\*---------------------------------------------------------------------------*/
36
37#ifndef famLaplacian_H
38#define famLaplacian_H
39
40#include "areaFieldsFwd.H"
41#include "edgeFieldsFwd.H"
42#include "faMatrix.H"
43
44// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45
46namespace Foam
47{
48
49/*---------------------------------------------------------------------------*\
50 Namespace fam functions Declaration
51\*---------------------------------------------------------------------------*/
52
53namespace fam
54{
55 template<class Type>
56 tmp<faMatrix<Type>> laplacian
57 (
58 const GeometricField<Type, faPatchField, areaMesh>&
59 );
60
61
62 template<class Type>
63 tmp<faMatrix<Type>> laplacian
64 (
65 const GeometricField<Type, faPatchField, areaMesh>&,
66 const word&
67 );
68
69
70 template<class Type>
71 tmp<faMatrix<Type>> laplacian
72 (
73 const dimensionedScalar&,
74 const GeometricField<Type, faPatchField, areaMesh>&
75 );
76
77
78 template<class Type>
79 tmp<faMatrix<Type>> laplacian
80 (
81 const dimensionedScalar&,
82 const GeometricField<Type, faPatchField, areaMesh>&,
83 const word&
84 );
85
86
87 template<class Type>
88 tmp<faMatrix<Type>> laplacian
89 (
90 const areaScalarField&,
91 const GeometricField<Type, faPatchField, areaMesh>&
92 );
93
94 template<class Type>
95 tmp<faMatrix<Type>> laplacian
96 (
97 const areaScalarField&,
98 const GeometricField<Type, faPatchField, areaMesh>&,
99 const word&
100 );
101
102 template<class Type>
103 tmp<faMatrix<Type>> laplacian
104 (
105 const areaScalarField&,
106 const GeometricField<Type, faPatchField, areaMesh>&
107 );
108
109 template<class Type>
110 tmp<faMatrix<Type>> laplacian
111 (
112 const tmp<areaScalarField>&,
113 const GeometricField<Type, faPatchField, areaMesh>&,
114 const word&
115 );
116 template<class Type>
117 tmp<faMatrix<Type>> laplacian
118 (
119 const tmp<areaScalarField>&,
120 const GeometricField<Type, faPatchField, areaMesh>&,
121 const word&
122 );
123
124
125 template<class Type>
126 tmp<faMatrix<Type>> laplacian
127 (
128 const edgeScalarField&,
129 const GeometricField<Type, faPatchField, areaMesh>&,
130 const word&
131 );
132
133 template<class Type>
134 tmp<faMatrix<Type>> laplacian
135 (
136 const tmp<edgeScalarField>&,
137 const GeometricField<Type, faPatchField, areaMesh>&,
138 const word&
139 );
140
141
142 template<class Type>
143 tmp<faMatrix<Type>> laplacian
144 (
145 const edgeScalarField&,
146 const GeometricField<Type, faPatchField, areaMesh>&
147 );
148
149 template<class Type>
150 tmp<faMatrix<Type>> laplacian
151 (
152 const tmp<edgeScalarField>&,
153 const GeometricField<Type, faPatchField, areaMesh>&
154 );
155
156
157 template<class Type>
158 tmp<faMatrix<Type>> laplacian
159 (
160 const areaTensorField&,
161 const GeometricField<Type, faPatchField, areaMesh>&
162 );
163
164 template<class Type>
165 tmp<faMatrix<Type>> laplacian
166 (
167 const tmp<areaTensorField>&,
168 const GeometricField<Type, faPatchField, areaMesh>&
169 );
170
171
172 template<class Type>
173 tmp<faMatrix<Type>> laplacian
174 (
175 const edgeTensorField&,
176 const GeometricField<Type, faPatchField, areaMesh>&
177 );
178
179 template<class Type>
180 tmp<faMatrix<Type>> laplacian
181 (
182 const tmp<edgeTensorField>&,
183 const GeometricField<Type, faPatchField, areaMesh>&
184 );
185
186
187 template<class Type>
188 tmp<faMatrix<Type>> laplacian
189 (
190 const edgeTensorField&,
191 const GeometricField<Type, faPatchField, areaMesh>&,
192 const word& name
193 );
194
195 template<class Type>
196 tmp<faMatrix<Type>> laplacian
197 (
198 const tmp<edgeTensorField>&,
199 const GeometricField<Type, faPatchField, areaMesh>&,
200 const word& name
201 );
202}
203
204
205// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
206
207} // End namespace Foam
208
209// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
210
211#ifdef NoRepository
212 #include "famLaplacian.C"
213#endif
214
215// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
216
217#endif
218
219// ************************************************************************* //
Forwards and collection of common area field types.
Forwards for edge field types.
tmp< faMatrix< Type > > laplacian(const GeometricField< Type, faPatchField, areaMesh > &vf)
Definition: famLaplacian.C:49
Namespace for OpenFOAM.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
GeometricField< tensor, faPatchField, areaMesh > areaTensorField
Definition: areaFieldsFwd.H:83
GeometricField< scalar, faePatchField, edgeMesh > edgeScalarField
Definition: edgeFieldsFwd.H:63
GeometricField< scalar, faPatchField, areaMesh > areaScalarField
Definition: areaFieldsFwd.H:78
GeometricField< tensor, faePatchField, edgeMesh > edgeTensorField
Definition: edgeFieldsFwd.H:68
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
Definition: exprTraits.C:59
Calculate the matrix for the second temporal derivative.