faMeshMapper.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-2017 Wikki 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 "faMeshMapper.H"
29 
30 // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
31 
32 Foam::faMeshMapper::faMeshMapper
33 (
34  const faMesh& mesh,
35  const mapPolyMesh& mpm
36 )
37 :
38  mesh_(mesh),
39  nOldPoints_(mesh.nPoints()),
40  nOldEdges_(mesh.nEdges()),
41  nOldInternalEdges_(mesh.nInternalEdges()),
42  nOldFaces_(mesh.nFaces()),
43  oldPatchSizes_(mesh.boundary().size(), 0),
44  oldPatchStarts_(mesh.boundary().size(), -1),
45  oldPatchEdgeFaces_(mesh.boundary().size()),
46  areaMap_(mesh, mpm),
47  edgeMap_(mesh, mpm),
48  boundaryMap_(mesh, mpm)
49 {
50  // Capture old patch information
51  const faBoundaryMesh& patches = mesh.boundary();
52 
53  forAll(patches, patchI)
54  {
55  oldPatchSizes_[patchI] = patches[patchI].size();
56  oldPatchStarts_[patchI] = patches[patchI].start();
57 
58  oldPatchEdgeFaces_[patchI] = patches[patchI].edgeFaces();
59  }
60 }
61 
62 
63 // ************************************************************************* //
faMeshMapper.H
forAll
#define forAll(list, i)
Loop across all elements in list.
Definition: stdFoam.H:296
Foam::faBoundaryMesh
Finite area boundary mesh.
Definition: faBoundaryMesh.H:66
mesh
dynamicFvMesh & mesh
Definition: createDynamicFvMesh.H:6
patches
const polyBoundaryMesh & patches
Definition: convertProcessorPatches.H:65
Foam::mapPolyMesh
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
Definition: mapPolyMesh.H:160
Foam::faMesh
Finite area mesh. Used for 2-D non-Euclidian finite area method.
Definition: faMesh.H:77