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-2021 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  return patchInternalField(internalData, faceCells);
63 }
64 
65 
67 (
68  const Pstream::commsTypes commsType,
69  const labelUList& iF
70 ) const
71 {}
72 
73 
75 (
76  const Pstream::commsTypes commsType,
77  const labelUList& iF,
78  const labelUList& faceCells
79 ) const
80 {}
81 
82 
84 (
85  const Pstream::commsTypes commsType,
86  const labelUList& iF
87 ) const
88 {
89  return tmp<labelField>::New(iF);
90 }
91 
92 
94 (
95  const Pstream::commsTypes commsType,
96  const labelUList& iF,
97  const labelUList& nbrFaceCells
98 ) const
99 {
101  return tmp<labelField>::New(iF);
102 }
103 
104 
105 // ************************************************************************* //
commsTypes
Types of communications.
Definition: UPstream.H:66
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition: fvPatch.H:68
Patch for indicating interpolated boundaries (in overset meshes).
void patchInternalField(const UList< Type > &f, const labelUList &faceCells, Field< Type > &pfld) const
Extract internal field next to patch using faceCells mapping.
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.
3D tensor transformation operations.
static tmp< T > New(Args &&... args)
Construct tmp with forwarding arguments.
Definition: tmp.H:203
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)
addToRunTimeSelectionTable(decompositionMethod, kahipDecomp, dictionary)
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:666
Namespace for OpenFOAM.