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
applications
utilities
parallelProcessing
reconstructPar
pointFieldReconstructor.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::pointFieldReconstructor
26
27
Description
28
Point field reconstructor.
29
30
SourceFiles
31
pointFieldReconstructor.C
32
33
\*---------------------------------------------------------------------------*/
34
35
#ifndef pointFieldReconstructor_H
36
#define pointFieldReconstructor_H
37
38
#include <
OpenFOAM/pointMesh.H
>
39
#include <
OpenFOAM/pointFields.H
>
40
#include <
OpenFOAM/pointPatchFieldMapperPatchRef.H
>
41
#include <
OpenFOAM/IOobjectList.H
>
42
43
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44
45
namespace
Foam
46
{
47
48
/*---------------------------------------------------------------------------*\
49
Class pointFieldReconstructor Declaration
50
\*---------------------------------------------------------------------------*/
51
52
class
pointFieldReconstructor
53
{
54
// Private data
55
56
//- Reconstructed mesh reference
57
const
pointMesh
& mesh_;
58
59
//- List of processor meshes
60
const
PtrList<pointMesh>
& procMeshes_;
61
62
//- List of processor point addressing lists
63
const
PtrList<labelIOList>
& pointProcAddressing_;
64
65
//- List of processor boundary addressing lists
66
const
PtrList<labelIOList>
& boundaryProcAddressing_;
67
68
//- Point patch addressing
69
labelListListList
patchPointAddressing_;
70
71
72
// Private Member Functions
73
74
//- Disallow default bitwise copy construct
75
pointFieldReconstructor
76
(
77
const
pointFieldReconstructor
&
78
);
79
80
//- Disallow default bitwise assignment
81
void
operator=(
const
pointFieldReconstructor
&);
82
83
84
public
:
85
86
class
pointPatchFieldReconstructor
87
:
88
public
pointPatchFieldMapper
89
{
90
label size_;
91
92
public
:
93
94
// Constructors
95
96
//- Construct given size
97
pointPatchFieldReconstructor
(
const
label
size
)
98
:
99
size_(size)
100
{}
101
102
103
// Member functions
104
105
label
size
()
const
106
{
107
return
size_;
108
}
109
110
bool
direct
()
const
111
{
112
return
true
;
113
}
114
115
const
unallocLabelList
&
directAddressing
()
const
116
{
117
return
unallocLabelList::null
();
118
}
119
};
120
121
122
// Constructors
123
124
//- Construct from components
125
pointFieldReconstructor
126
(
127
const
pointMesh
&
mesh
,
128
const
PtrList<pointMesh>
& procMeshes,
129
const
PtrList<labelIOList>
& pointProcAddressing,
130
const
PtrList<labelIOList>
& boundaryProcAddressing
131
);
132
133
134
// Member Functions
135
136
//- Reconstruct field
137
template
<
class
Type>
138
tmp<GeometricField<Type, pointPatchField, pointMesh>
>
139
reconstructField
(
const
IOobject
& fieldIoObject);
140
141
//- Reconstruct and write all fields
142
template
<
class
Type>
143
void
reconstructFields
(
const
IOobjectList
& objects);
144
};
145
146
147
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
148
149
}
// End namespace Foam
150
151
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
152
153
#ifdef NoRepository
154
# include "
pointFieldReconstructorReconstructFields.C
"
155
#endif
156
157
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
158
159
#endif
160
161
// ************************ vim: set sw=4 sts=4 et: ************************ //