dimensionedSymmTensor.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-2015 OpenFOAM Foundation
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
26\*---------------------------------------------------------------------------*/
27
29
30// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
31
32namespace Foam
33{
34
35// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
36
37template<>
39{
41 (
42 name()+".T()",
43 dimensions(),
44 value().T()
45 );
46}
47
48
49// * * * * * * * * * * * * * * * Friend Functions * * * * * * * * * * * * * //
50
52{
54 (
55 "sqr("+dv.name()+')',
56 sqr(dv.dimensions()),
57 sqr(dv.value())
58 );
59}
60
61
63{
65 (
66 "innerSqr("+dt.name()+')',
67 sqr(dt.dimensions()),
68 innerSqr(dt.value())
69 );
70}
71
72
74{
76 (
77 "tr("+dt.name()+')',
78 dt.dimensions(),
79 tr(dt.value())
80 );
81}
82
83
85{
87 (
88 "symm("+dt.name()+')',
89 dt.dimensions(),
90 symm(dt.value())
91 );
92}
93
94
96{
98 (
99 "twoSymm("+dt.name()+')',
100 dt.dimensions(),
101 twoSymm(dt.value())
102 );
103}
104
105
107{
109 (
110 "dev("+dt.name()+')',
111 dt.dimensions(),
112 dev(dt.value())
113 );
114}
115
116
118{
120 (
121 "dev2("+dt.name()+')',
122 dt.dimensions(),
123 dev2(dt.value())
124 );
125}
126
127
129{
130 return dimensionedScalar
131 (
132 "det("+dt.name()+')',
134 det(dt.value())
135 );
136}
137
138
140{
142 (
143 "cof("+dt.name()+')',
144 pow(dt.dimensions(), symmTensor::dim - 1),
145 cof(dt.value())
146 );
147}
148
149
151{
153 (
154 "inv("+dt.name()+')',
155 dimless/dt.dimensions(),
156 inv(dt.value())
157 );
158}
159
160
161// * * * * * * * * * * * * * * * Friend Operators * * * * * * * * * * * * * //
162
164{
165 return dimensionedVector
166 (
167 "*"+dt.name(),
168 dt.dimensions(),
169 *dt.value()
170 );
171}
172
173
174// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
175
176} // End namespace Foam
177
178// ************************************************************************* //
Generic dimensioned Type class.
const dimensionSet & dimensions() const
Return const reference to dimensions.
const Type & value() const
Return const reference to value.
const word & name() const
Return const reference to name.
dimensioned< Type > T() const
Return transpose.
static constexpr direction dim
Dimensionality of space.
Definition: bool.H:92
Namespace for OpenFOAM.
dimensionedSymmTensor dev2(const dimensionedSymmTensor &dt)
dimensionedSymmTensor dev(const dimensionedSymmTensor &dt)
dimensionedScalar det(const dimensionedSphericalTensor &dt)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
dimensionedSymmTensor symm(const dimensionedSymmTensor &dt)
const dimensionSet dimless
Dimensionless.
dimensionedScalar tr(const dimensionedSphericalTensor &dt)
dimensionedSymmTensor sqr(const dimensionedVector &dv)
dimensionedSymmTensor twoSymm(const dimensionedSymmTensor &dt)
tmp< faMatrix< Type > > operator*(const areaScalarField::Internal &, const faMatrix< Type > &)
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
dimensionedSymmTensor cof(const dimensionedSymmTensor &dt)
dimensioned< symmTensor > dimensionedSymmTensor
Dimensioned tensor obtained from generic dimensioned type.
dimensioned< vector > dimensionedVector
Dimensioned vector obtained from generic dimensioned type.
dimensionedSphericalTensor inv(const dimensionedSphericalTensor &dt)
dimensionedSymmTensor innerSqr(const dimensionedSymmTensor &dt)