surfaceFieldValueI.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) 2011-2016 OpenFOAM Foundation
9  Copyright (C) 2017-2021 OpenCFD Ltd.
10 -------------------------------------------------------------------------------
11 License
12  This file is part of OpenFOAM.
13 
14  OpenFOAM is free software: you can redistribute it and/or modify it
15  under the terms of the GNU General Public License as published by
16  the Free Software Foundation, either version 3 of the License, or
17  (at your option) any later version.
18 
19  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
20  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
21  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22  for more details.
23 
24  You should have received a copy of the GNU General Public License
25  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
26 
27 \*---------------------------------------------------------------------------*/
28 
29 #include "Time.H"
30 #include "sampledSurface.H"
31 
32 // * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * //
33 
36 {
37  return
38  (
40  || stPatch == regionType_
41  || (sampledPtr_ && sampledPtr_->withSurfaceFields())
42  );
43 }
44 
45 
47 withTopologicalMerge() const noexcept
48 {
49  return (stFaceZone == regionType_ || stPatch == regionType_);
50 }
51 
52 
53 inline const Foam::labelList&
55 const noexcept
56 {
57  return faceId_;
58 }
59 
60 
61 inline const Foam::labelList&
63 const noexcept
64 {
65  return facePatchId_;
66 }
67 
68 
69 inline const Foam::boolList&
71 const noexcept
72 {
73  return faceFlip_;
74 }
75 
76 
77 // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
78 
81 const noexcept
82 {
83  // Operation specifically tagged to use mag
84  return (operation_ & typeAbsolute);
85 }
86 
87 
89 is_weightedOp() const noexcept
90 {
91  // Operation specifically tagged to require a weight field
92  return (operation_ & typeWeighted);
93 }
94 
95 
98 const noexcept
99 {
100  return regionType_;
101 }
102 
103 
104 inline Foam::fileName
106 {
107  return baseFileDir()/name()/"surface"/time_.timeName();
108 }
109 
110 
111 // ************************************************************************* //
Foam::functionObjects::fieldValues::surfaceFieldValue::is_weightedOp
bool is_weightedOp() const noexcept
True if the operation variant uses a weight-field.
Definition: surfaceFieldValueI.H:89
Foam::fileName
A class for handling file names.
Definition: fileName.H:73
Foam::functionObjects::fieldValues::surfaceFieldValue::stFaceZone
Calculate with faceZone(s)
Definition: surfaceFieldValue.H:463
Foam::functionObjects::fieldValues::surfaceFieldValue::regionType_
regionTypes regionType_
Region type.
Definition: surfaceFieldValue.H:598
Foam::functionObjects::fieldValues::surfaceFieldValue::regionType
regionTypes regionType() const noexcept
Return the region type.
Definition: surfaceFieldValueI.H:97
Foam::functionObjects::fieldValues::surfaceFieldValue::withSurfaceFields
bool withSurfaceFields() const
Can the surface definition sample surface-fields?
Definition: surfaceFieldValueI.H:35
Foam::functionObjects::fieldValues::surfaceFieldValue::is_magOp
bool is_magOp() const noexcept
True if the operation variant uses mag.
Definition: surfaceFieldValueI.H:80
Foam::functionObjects::fieldValues::surfaceFieldValue::withTopologicalMerge
bool withTopologicalMerge() const noexcept
Can use mesh topological merge?
Definition: surfaceFieldValueI.H:47
sampledSurface.H
Foam::functionObjects::fieldValues::surfaceFieldValue::regionTypes
regionTypes
Region type enumeration.
Definition: surfaceFieldValue.H:461
Foam::functionObjects::fieldValues::surfaceFieldValue::faceFlip
const boolList & faceFlip() const noexcept
Return the local true/false list representing the face flip map.
Definition: surfaceFieldValueI.H:70
Foam::functionObjects::fieldValues::surfaceFieldValue::faceId
const labelList & faceId() const noexcept
Return the local list of face IDs.
Definition: surfaceFieldValueI.H:54
Time.H
Foam::List< label >
Foam::functionObjects::fieldValues::surfaceFieldValue::sampledPtr_
autoPtr< sampledSurface > sampledPtr_
The sampledSurface (when operating on sampledSurface)
Definition: surfaceFieldValue.H:641
Foam::name
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
Definition: exprTraits.C:59
Foam::functionObjects::fieldValues::surfaceFieldValue::stPatch
Calculate with patch(es)
Definition: surfaceFieldValue.H:464
Foam::functionObjects::fieldValues::surfaceFieldValue::outputDir
fileName outputDir() const
Return the output directory.
Definition: surfaceFieldValueI.H:105
Foam::functionObjects::fieldValues::surfaceFieldValue::facePatch
const labelList & facePatch() const noexcept
Return the local list of patch ID per face.
Definition: surfaceFieldValueI.H:62