zeroFieldI.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) 2011-2017 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 
28 namespace Foam
29 {
30 
31 // * * * * * * * * * * * * * * * Global Operators * * * * * * * * * * * * * //
32 
33 inline const zeroField operator+(const zeroField&, const zeroField&)
34 {
35  return zeroField();
36 }
37 
38 template<class Type>
39 inline const Type& operator+(const Type& t, const zeroField&)
40 {
41  return t;
42 }
43 
44 template<class Type>
45 inline const Type& operator+(const zeroField&, const Type& t)
46 {
47  return t;
48 }
49 
50 inline const zeroField operator-(const zeroField&, const zeroField&)
51 {
52  return zeroField();
53 }
54 
55 template<class Type>
56 inline const Type& operator-(const Type& t, const zeroField&)
57 {
58  return t;
59 }
60 
61 template<class Type>
62 inline Type operator-(const zeroField&, const Type& t)
63 {
64  return -t;
65 }
66 
67 template<class Type>
68 inline zeroField operator*(const Type& t, const zeroField&)
69 {
70  return zeroField();
71 }
72 
73 template<class Type>
74 inline zeroField operator*(const zeroField&, const Type& t)
75 {
76  return zeroField();
77 }
78 
79 template<class Type>
80 inline zeroField operator/(const zeroField&, const Type& t)
81 {
82  return zeroField();
83 }
84 
85 
86 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
87 
88 } // End namespace Foam
89 
90 // ************************************************************************* //
Foam::zeroField
A class representing the concept of a field of 0 used to avoid unnecessary manipulations for objects ...
Definition: zeroField.H:53
Foam::operator-
tmp< faMatrix< Type > > operator-(const faMatrix< Type > &)
Foam::vtk::Tools::zeroField
vtkSmartPointer< vtkFloatArray > zeroField(const word &name, const label size)
Create named field initialized to zero.
Definition: foamVtkToolsTemplates.C:327
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Foam::operator/
dimensionedScalar operator/(const scalar s1, const dimensionedScalar &ds2)
Definition: dimensionedScalar.C:68
Foam::operator+
tmp< faMatrix< Type > > operator+(const faMatrix< Type > &, const faMatrix< Type > &)
Foam::operator*
tmp< faMatrix< Type > > operator*(const areaScalarField &, const faMatrix< Type > &)