Home
Downloads
Documentation
Installation
User Guide
man-pages
API Documentation
README
Release Notes
Changes
License
Support
SourceForge Project
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
turbulenceModels
LES
LESfilters
LESfilter
LESfilter.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 | Copyright (C) 1991-2010 OpenCFD Ltd.
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
License
9
This file is part of OpenFOAM.
10
11
OpenFOAM is free software: you can redistribute it and/or modify it
12
under the terms of the GNU General Public License as published by
13
the Free Software Foundation, either version 3 of the License, or
14
(at your option) any later version.
15
16
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19
for more details.
20
21
You should have received a copy of the GNU General Public License
22
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23
24
Class
25
Foam::LESfilter
26
27
Description
28
Abstract class for LES filters
29
30
SourceFiles
31
LESfilter.C
32
newFilter.C
33
34
\*---------------------------------------------------------------------------*/
35
36
#ifndef LESfilter_H
37
#define LESfilter_H
38
39
#include <
finiteVolume/volFields.H
>
40
#include <
OpenFOAM/typeInfo.H
>
41
#include <
OpenFOAM/autoPtr.H
>
42
#include <
OpenFOAM/runTimeSelectionTables.H
>
43
44
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45
46
namespace
Foam
47
{
48
49
class
fvMesh;
50
51
/*---------------------------------------------------------------------------*\
52
Class LESfilter Declaration
53
\*---------------------------------------------------------------------------*/
54
55
class
LESfilter
56
{
57
// Private data
58
59
const
fvMesh
& mesh_;
60
61
62
// Private Member Functions
63
64
// Disallow default bitwise copy construct and assignment
65
LESfilter
(
const
LESfilter
&);
66
void
operator=(
const
LESfilter
&);
67
68
69
public
:
70
71
//- Runtime type information
72
TypeName
(
"LESfilter"
);
73
74
75
// Declare run-time constructor selection table
76
77
declareRunTimeSelectionTable
78
(
79
autoPtr
,
80
LESfilter
,
81
dictionary
,
82
(
83
const
fvMesh
&
mesh
,
84
const
dictionary
& LESfilterDict
85
),
86
(mesh, LESfilterDict)
87
);
88
89
90
// Constructors
91
92
//- Construct from components
93
LESfilter
(
const
fvMesh
& mesh)
94
:
95
mesh_(mesh)
96
{}
97
98
99
// Selectors
100
101
//- Return a reference to the selected LES filter
102
static
autoPtr<LESfilter>
New
103
(
104
const
fvMesh
&,
105
const
dictionary
&
106
);
107
108
109
//- Destructor
110
virtual
~LESfilter
()
111
{}
112
113
114
// Member Functions
115
116
//- Return mesh reference
117
const
fvMesh
&
mesh
()
const
118
{
119
return
mesh_;
120
}
121
122
//- Read the LESfilter dictionary
123
virtual
void
read
(
const
dictionary
&) = 0;
124
125
126
// Member Operators
127
128
virtual
tmp<volScalarField>
operator()
129
(
130
const
tmp<volScalarField>
&
131
)
const
= 0;
132
133
virtual
tmp<volVectorField>
operator()
134
(
135
const
tmp<volVectorField>
&
136
)
const
= 0;
137
138
virtual
tmp<volSymmTensorField>
operator()
139
(
140
const
tmp<volSymmTensorField>
&
141
)
const
= 0;
142
143
virtual
tmp<volTensorField>
operator()
144
(
145
const
tmp<volTensorField>
&
146
)
const
= 0;
147
};
148
149
150
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
151
152
}
// End namespace Foam
153
154
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
155
156
#endif
157
158
// ************************ vim: set sw=4 sts=4 et: ************************ //