correctedCellVolumeWeightMethod.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) 2015 OpenFOAM Foundation
9-------------------------------------------------------------------------------
10License
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
26Class
27 Foam::correctedCellVolumeWeightMethod
28
29Description
30 Cell-volume-weighted mesh-to-mesh interpolation class
31
32 Volume conservative with calculated offset vectors
33
34SourceFiles
35 correctedCellVolumeWeightMethod.C
36
37\*---------------------------------------------------------------------------*/
38
39#ifndef correctedCellVolumeWeightMethod_H
40#define correctedCellVolumeWeightMethod_H
41
43
44// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45
46namespace Foam
47{
48
49/*---------------------------------------------------------------------------*\
50 Class correctedCellVolumeWeightMethod Declaration
51\*---------------------------------------------------------------------------*/
54:
56{
57protected:
58
59 // Protected Member Functions
60
61 //- Calculate the mesh-to-mesh addressing and weights
63 (
64 labelListList& srcToTgtCellAddr,
65 scalarListList& srcToTgtCellWght,
66 pointListList& srcToTgtCellVec,
67 labelListList& tgtToSrcCellAddr,
68 scalarListList& tgtToSrcCellWght,
69 pointListList& tgtToSrcCellVec,
70 const label srcSeedI,
71 const label tgtSeedI,
72 const labelList& srcCellIDs,
73 boolList& mapFlag,
74 label& startSeedI
75 );
76
77 //- No copy construct
79 (
81 ) = delete;
82
83 //- No copy assignment
84 void operator=(const correctedCellVolumeWeightMethod&) = delete;
85
86
87public:
88
89 //- Run-time type information
90 TypeName("correctedCellVolumeWeight");
91
92 //- Construct from source and target meshes
94
95 //- Destructor
97
98
99 // Member Functions
100
101 // Evaluate
102
103 //- Calculate addressing and weights and optionally offset vectors
104 virtual void calculate
105 (
106 labelListList& srcToTgtAddr,
107 scalarListList& srcToTgtWght,
108 pointListList& srcToTgtVec,
109 labelListList& tgtToSrcAddr,
110 scalarListList& tgtToSrcWght,
111 pointListList& tgtToSrcVec
112 );
113};
114
115
116// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
117
118} // End namespace Foam
119
120// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
121
122#endif
123
124// ************************************************************************* //
Cell-volume-weighted mesh-to-mesh interpolation class.
Cell-volume-weighted mesh-to-mesh interpolation class.
TypeName("correctedCellVolumeWeight")
Run-time type information.
correctedCellVolumeWeightMethod(const correctedCellVolumeWeightMethod &)=delete
No copy construct.
void calculateAddressing(labelListList &srcToTgtCellAddr, scalarListList &srcToTgtCellWght, pointListList &srcToTgtCellVec, labelListList &tgtToSrcCellAddr, scalarListList &tgtToSrcCellWght, pointListList &tgtToSrcCellVec, const label srcSeedI, const label tgtSeedI, const labelList &srcCellIDs, boolList &mapFlag, label &startSeedI)
Calculate the mesh-to-mesh addressing and weights.
virtual void calculate(labelListList &srcToTgtAddr, scalarListList &srcToTgtWght, pointListList &srcToTgtVec, labelListList &tgtToSrcAddr, scalarListList &tgtToSrcWght, pointListList &tgtToSrcVec)
Calculate addressing and weights and optionally offset vectors.
void operator=(const correctedCellVolumeWeightMethod &)=delete
No copy assignment.
const polyMesh & src() const
Return const access to the source mesh.
const polyMesh & tgt() const
Return const access to the target mesh.
Mesh consisting of general polyhedral cells.
Definition: polyMesh.H:81
Namespace for OpenFOAM.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73