OpenFOAM: API Guide
v2112
The open source CFD toolbox
tensor.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-2014 OpenFOAM Foundation
9
Copyright (C) 2019-2020 OpenCFD Ltd.
10
-------------------------------------------------------------------------------
11
License
12
This file is part of OpenFOAM.
13
14
OpenFOAM is free software: you can redistribute it and/or modify it
15
under the terms of the GNU General Public License as published by
16
the Free Software Foundation, either version 3 of the License, or
17
(at your option) any later version.
18
19
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
20
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
21
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22
for more details.
23
24
You should have received a copy of the GNU General Public License
25
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
26
27
Typedef
28
Foam::tensor
29
30
Description
31
Tensor of scalars, i.e. Tensor<scalar>.
32
33
Analytical functions for the computation of complex eigenvalues and
34
complex eigenvectors from a given tensor.
35
36
See also
37
Test-Tensor.C
38
39
SourceFiles
40
tensor.C
41
42
\*---------------------------------------------------------------------------*/
43
44
#ifndef tensor_H
45
#define tensor_H
46
47
#include "
Tensor.H
"
48
#include "
vector.H
"
49
#include "
sphericalTensor.H
"
50
#include "
symmTensor.H
"
51
#include "
complex.H
"
52
53
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
54
55
namespace
Foam
56
{
57
58
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
59
60
typedef
Tensor<scalar>
tensor
;
61
62
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
63
64
//- Return complex eigenvalues of a given tensor
65
// \param T tensor
66
//
67
// \return Vector<complex> eigenvalues
68
Vector<complex>
eigenValues
(
const
tensor
&
T
);
69
70
71
//- Return a complex eigenvector corresponding to
72
//- a given complex eigenvalue of a given tensor
73
// \param T tensor
74
// \param eVal complex eigenvalue
75
// \param standardBasis1 tensor orthogonal component 1
76
// \param standardBasis2 tensor orthogonal component 2
77
//
78
// \return Vector<complex> eigenvector
79
Vector<complex>
eigenVector
80
(
81
const
tensor
&
T
,
82
const
complex
& eVal,
83
const
Vector<complex>& standardBasis1,
84
const
Vector<complex>& standardBasis2
85
);
86
87
88
//- Return complex eigenvectors corresponding to
89
//- given complex eigenvalues of a given tensor
90
// \param T tensor
91
// \param eVals complex eigenvalues
92
//
93
// \return Tensor<complex> eigenvectors, each row is an eigenvector
94
Tensor<complex>
eigenVectors
95
(
96
const
tensor
&
T
,
97
const
Vector<complex>& eVals
98
);
99
100
101
//- Return complex eigenvectors of a given tensor by computing
102
//- the complex eigenvalues of the tensor in the background
103
// \param T tensor
104
//
105
// \return Tensor<complex> complex eigenvectors, each row is an eigenvector
106
Tensor<complex>
eigenVectors
(
const
tensor
&
T
);
107
108
109
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
110
111
}
// End namespace Foam
112
113
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
114
115
#endif
116
117
// ************************************************************************* //
Foam::roots::complex
Definition:
Roots.H:57
Foam::eigenVector
vector eigenVector(const symmTensor &T, const scalar eVal, const vector &standardBasis1, const vector &standardBasis2)
Definition:
symmTensor.C:152
Foam::eigenValues
dimensionedVector eigenValues(const dimensionedSymmTensor &dt)
Definition:
dimensionedTensor.C:149
Foam::eigenVectors
dimensionedTensor eigenVectors(const dimensionedSymmTensor &dt)
Definition:
dimensionedTensor.C:160
complex.H
sphericalTensor.H
symmTensor.H
Foam::T
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
Definition:
FieldFieldFunctions.C:58
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.C:33
Tensor.H
vector.H
Foam::tensor
Tensor< scalar > tensor
Tensor of scalars, i.e. Tensor<scalar>.
Definition:
symmTensor.H:61
src
OpenFOAM
primitives
Tensor
tensor
tensor.H
Generated by
1.8.17
OPENFOAM® is a registered
trademark
of OpenCFD Ltd.