Lambda2.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) 2013-2016 OpenFOAM Foundation
9  Copyright (C) 2020-2023 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 Class
28  Foam::functionObjects::Lambda2
29 
30 Group
31  grpFieldFunctionObjects
32 
33 Description
34  Computes the second largest eigenvalue of the sum of the square of
35  the symmetrical and anti-symmetrical parts of the velocity gradient tensor.
36 
37  Operands:
38  \table
39  Operand | Type | Location
40  input | volVectorField | <case>/<time>/<inpField>
41  output file | - | -
42  output field | volScalarField | <case>/<time>/<outField>
43  \endtable
44 
45  References:
46  \verbatim
47  Governing equation (tag:JH):
48  Jeong, J., & Hussain, F. (1995).
49  On the identification of a vortex.
50  Journal of Fluid Mechanics, 285, 69-94.
51  DOI:10.1017/S0022112095000462
52  \endverbatim
53 
54 Usage
55  Minimal example by using \c system/controlDict.functions:
56  \verbatim
57  Lambda21
58  {
59  // Mandatory entries
60  type Lambda2;
61  libs (fieldFunctionObjects);
62 
63  // Inherited entries
64  ...
65  }
66  \endverbatim
67 
68  where the entries mean:
69  \table
70  Property | Description | Type | Reqd | Deflt
71  type | Type name: Lambda2 | word | yes | -
72  libs | Library name: fieldFunctionObjects | word | yes | -
73  \endtable
74 
75  The inherited entries are elaborated in:
76  - \link functionObject.H \endlink
77  - \link fieldExpression.H \endlink
78 
79  Minimal example by using the \c postProcess utility:
80  \verbatim
81  postProcess -func Lambda2
82  \endverbatim
83 
84 SourceFiles
85  Lambda2.C
86 
87 \*---------------------------------------------------------------------------*/
88 
89 #ifndef functionObjects_Lambda2_H
90 #define functionObjects_Lambda2_H
91 
92 #include "fieldExpression.H"
93 
94 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
95 
96 namespace Foam
97 {
98 namespace functionObjects
99 {
100 
101 /*---------------------------------------------------------------------------*\
102  Class Lambda2 Declaration
103 \*---------------------------------------------------------------------------*/
104 
105 class Lambda2
106 :
107  public fieldExpression
108 {
109  // Private Member Functions
110 
111  //- Calculate the Lambda2 field and return true if successful
112  virtual bool calc();
113 
114 
115 public:
116 
117  //- Runtime type information
118  TypeName("Lambda2");
119 
120 
121  // Constructors
122 
123  //- Construct from Time and dictionary
124  Lambda2
125  (
126  const word& name,
127  const Time& runTime,
128  const dictionary& dict
129  );
130 
131  //- No copy construct
132  Lambda2(const Lambda2&) = delete;
133 
134  //- No copy assignment
135  void operator=(const Lambda2&) = delete;
136 
137 
138  //- Destructor
139  virtual ~Lambda2() = default;
140 };
141 
142 
143 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
144 
145 } // End namespace functionObjects
146 } // End namespace Foam
147 
148 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
149 
150 #endif
151 
152 // ************************************************************************* //
dictionary dict
void operator=(const Lambda2 &)=delete
No copy assignment.
engineTime & runTime
Computes the second largest eigenvalue of the sum of the square of the symmetrical and anti-symmetric...
Definition: Lambda2.H:134
const word & name() const noexcept
Return the name of this functionObject.
virtual ~Lambda2()=default
Destructor.
Lambda2(const word &name, const Time &runTime, const dictionary &dict)
Construct from Time and dictionary.
Definition: Lambda2.C:72
TypeName("Lambda2")
Runtime type information.
Namespace for OpenFOAM.