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
finiteVolume
finiteVolume
gradSchemes
leastSquaresGrad
leastSquaresVectors.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::leastSquaresVectors
26
27
Description
28
Least-squares gradient scheme vectors
29
30
SourceFiles
31
leastSquaresVectors.C
32
33
\*---------------------------------------------------------------------------*/
34
35
#ifndef leastSquaresVectors_H
36
#define leastSquaresVectors_H
37
38
#include <
OpenFOAM/MeshObject.H
>
39
#include <
finiteVolume/fvMesh.H
>
40
#include <
finiteVolume/surfaceFieldsFwd.H
>
41
#include <
OpenFOAM/labelPair.H
>
42
43
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44
45
namespace
Foam
46
{
47
48
/*---------------------------------------------------------------------------*\
49
Class leastSquaresVectors Declaration
50
\*---------------------------------------------------------------------------*/
51
52
class
leastSquaresVectors
53
:
54
public
MeshObject
<fvMesh, leastSquaresVectors>
55
{
56
// Private data
57
58
//- Least-squares gradient vectors
59
mutable
surfaceVectorField
* pVectorsPtr_;
60
mutable
surfaceVectorField
* nVectorsPtr_;
61
62
63
// Private member functions
64
65
//- Construct Least-squares gradient vectors
66
void
makeLeastSquaresVectors()
const
;
67
68
69
public
:
70
71
// Declare name of the class and its debug switch
72
TypeName
(
"leastSquaresVectors"
);
73
74
75
// Constructors
76
77
//- Construct given an fvMesh
78
explicit
leastSquaresVectors
(
const
fvMesh
&);
79
80
81
// Destructor
82
83
virtual
~leastSquaresVectors
();
84
85
86
// Member functions
87
88
//- Return reference to owner least square vectors
89
const
surfaceVectorField
&
pVectors
()
const
;
90
91
//- Return reference to neighbour least square vectors
92
const
surfaceVectorField
&
nVectors
()
const
;
93
94
95
//- Delete the least square vectors when the mesh moves
96
virtual
bool
movePoints
();
97
};
98
99
100
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
101
102
}
// End namespace Foam
103
104
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
105
106
#endif
107
108
// ************************ vim: set sw=4 sts=4 et: ************************ //