oversetFvPatch.C
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) 2016-2023 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 \*---------------------------------------------------------------------------*/
27 
28 #include "oversetFvPatch.H"
30 #include "fvMesh.H"
31 #include "transform.H"
32 #include "cellCellStencilObject.H"
33 #include "volFields.H"
34 
35 // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
36 
37 namespace Foam
38 {
39  defineTypeNameAndDebug(oversetFvPatch, 0);
41 }
42 
43 
44 // * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
45 
47 (
48  const labelUList& internalData
49 ) const
50 {
51  // Return all internal values
52  return patchInternalField(internalData);
53 }
54 
55 
57 (
58  const labelUList& internalData,
59  const labelUList& faceCells
60 ) const
61 {
62  auto tpfld = tmp<labelField>::New();
63  patchInternalField(internalData, faceCells, tpfld.ref());
64  return tpfld;
65 }
66 
67 
69 (
70  const Pstream::commsTypes commsType,
71  const labelUList& iF
72 ) const
73 {}
74 
75 
77 (
78  const Pstream::commsTypes commsType,
79  const labelUList& iF,
80  const labelUList& faceCells
81 ) const
82 {}
83 
84 
86 (
87  const Pstream::commsTypes commsType,
88  const labelUList& iF
89 ) const
90 {
91  return tmp<labelField>::New(iF);
92 }
93 
94 
96 (
97  const Pstream::commsTypes commsType,
98  const labelUList& iF,
99  const labelUList& nbrFaceCells
100 ) const
101 {
103  return tmp<labelField>::New(iF);
104 }
105 
106 
107 // ************************************************************************* //
commsTypes
Communications types.
Definition: UPstream.H:72
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition: fvPatch.H:70
Patch for indicating interpolated boundaries (in overset meshes).
Smooth ATC in cells next to a set of patches supplied by type.
Definition: faceCells.H:52
Macros for easy insertion into run-time selection tables.
void patchInternalField(const UList< Type > &internalData, const labelUList &addressing, Field< Type > &pfld) const
Extract internal field next to patch using specified addressing.
3D tensor transformation operations.
static tmp< T > New(Args &&... args)
Construct tmp with forwarding arguments.
Definition: tmp.H:206
virtual void initInternalFieldTransfer(const Pstream::commsTypes commsType, const labelUList &iF) const
Initialise transfer of internal field adjacent to the interface.
virtual tmp< labelField > interfaceInternalField(const labelUList &internalData) const
Return the values of the given internal data adjacent to the interface as a field.
defineTypeNameAndDebug(combustionModel, 0)
virtual tmp< labelField > internalFieldTransfer(const Pstream::commsTypes commsType, const labelUList &iF) const
Transfer and return internal field adjacent to the interface.
A class for managing temporary objects.
Definition: HashPtrTable.H:50
A patch is a list of labels that address the faces in the global face list.
Definition: polyPatch.H:69
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
Definition: error.H:686
Namespace for OpenFOAM.
addToRunTimeSelectionTable(functionObject, pointHistory, dictionary)