OpenFOAM: API Guide
v2006
The open source CFD toolbox
leastSquaresCellCellStencil.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) 2017 OpenCFD Ltd.
9
-------------------------------------------------------------------------------
10
License
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
Class
27
Foam::cellCellStencils::leastSquares
28
29
Description
30
Least-squares-weighted interpolation stencil.
31
32
Base machinery is similar to inverse distance interpolation stencil
33
but weights minimize error in LSQ sense recovering exact solution
34
for linear solution problems. Gradient and values are found
35
simultaneously.
36
37
SourceFiles
38
leastSquaresCellCellStencil.C
39
40
\*---------------------------------------------------------------------------*/
41
42
#ifndef cellCellStencils_leastSquares_H
43
#define cellCellStencils_leastSquares_H
44
45
#include "
inverseDistanceCellCellStencil.H
"
46
47
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
48
49
namespace
Foam
50
{
51
52
namespace
cellCellStencils
53
{
54
55
/*---------------------------------------------------------------------------*\
56
Class leastSquares Declaration
57
\*---------------------------------------------------------------------------*/
58
59
class
leastSquares
60
:
61
public
inverseDistance
62
{
63
// Private Member Functions
64
65
//- No copy construct
66
leastSquares
(
const
leastSquares
&) =
delete
;
67
68
//- No copy assignment
69
void
operator=(
const
leastSquares
&) =
delete
;
70
71
72
public
:
73
74
//- Runtime type information
75
TypeName
(
"leastSquares"
);
76
77
78
// Constructors
79
80
//- Construct from fvMesh
81
leastSquares
(
const
fvMesh
&,
const
dictionary
&,
const
bool
);
82
83
84
//- Destructor
85
virtual
~leastSquares
();
86
87
88
// Member Functions
89
90
//- Calculate lsq weights for single acceptor
91
virtual
void
stencilWeights
92
(
93
const
point
& sample,
94
const
pointList
& donorCcs,
95
scalarList
& weights
96
)
const
;
97
};
98
99
100
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
101
102
}
// End namespace cellCellStencils
103
}
// End namespace Foam
104
105
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
106
107
#endif
108
109
// ************************************************************************* //
inverseDistanceCellCellStencil.H
Foam::cellCellStencils::leastSquares::TypeName
TypeName("leastSquares")
Runtime type information.
Foam::cellCellStencils::inverseDistance
Inverse-distance-weighted interpolation stencil.
Definition:
inverseDistanceCellCellStencil.H:67
Foam::cellCellStencils::leastSquares::~leastSquares
virtual ~leastSquares()
Destructor.
Definition:
leastSquaresCellCellStencil.C:175
Foam::dictionary
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition:
dictionary.H:121
Foam::fvMesh
Mesh data needed to do the Finite Volume discretisation.
Definition:
fvMesh.H:84
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.C:33
Foam::cellCellStencils::leastSquares::stencilWeights
virtual void stencilWeights(const point &sample, const pointList &donorCcs, scalarList &weights) const
Calculate lsq weights for single acceptor.
Definition:
leastSquaresCellCellStencil.C:46
Foam::Vector< scalar >
Foam::List
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
Definition:
HashTable.H:102
Foam::cellCellStencils::leastSquares
Least-squares-weighted interpolation stencil.
Definition:
leastSquaresCellCellStencil.H:58
src
overset
cellCellStencil
leastSquares
leastSquaresCellCellStencil.H
Generated by
1.8.17
OPENFOAM® is a registered
trademark
of OpenCFD Ltd.