rawTopoChangerFvMesh.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 -------------------------------------------------------------------------------
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 Class
27  Foam::rawTopoChangerFvMesh
28 
29 Description
30  topoChangerFvMesh without any added functionality.
31 
32  Note: run without FOAM_SETNAN. Temporary has unitialised patch
33  data when faces get created out of nothing.
34 
35 SourceFiles
36  rawTopoChangerFvMesh.C
37 
38 \*---------------------------------------------------------------------------*/
39 
40 #ifndef rawTopoChangerFvMesh_H
41 #define rawTopoChangerFvMesh_H
42 
43 #include "topoChangerFvMesh.H"
44 #include "bitSet.H"
45 
46 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
47 
48 namespace Foam
49 {
50 
51 // Forward declaration of classes
52 
53 /*---------------------------------------------------------------------------*\
54  Class rawTopoChangerFvMesh Declaration
55 \*---------------------------------------------------------------------------*/
56 
58 :
59  public topoChangerFvMesh
60 {
61  // Private Member Functions
62 
63  //- Set unmapped values
64  template<class Type, template<class> class PatchField, class GeoMesh>
65  static void setUnmappedValues
66  (
68  const bitSet& mappedFace,
70  );
71 
72  template<class Type, template<class> class PatchField, class GeoMesh>
73  void zeroUnmappedValues(const bitSet& mappedFace) const;
74 
75  //- No copy construct
77 
78  //- No copy assignment
79  void operator=(const rawTopoChangerFvMesh&) = delete;
80 
81 public:
82 
83  //- Runtime type information
84  TypeName("rawTopoChangerFvMesh");
85 
86 
87  // Constructors
88 
89  //- Construct from database
90  explicit rawTopoChangerFvMesh(const IOobject& io);
91 
92  //- Destructor
93  virtual ~rawTopoChangerFvMesh();
94 
95 
96  // Member Functions
97 
98  //- Update the mesh for both mesh motion and topology change
99  virtual bool update();
100 };
101 
102 
103 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
104 
105 } // End namespace Foam
106 
107 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
108 
109 #ifdef NoRepository
111 #endif
112 
113 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
114 
115 #endif
116 
117 // ************************************************************************* //
Foam::IOobject
Defines the attributes of an object for which implicit objectRegistry management is supported,...
Definition: IOobject.H:104
Foam::rawTopoChangerFvMesh::update
virtual bool update()
Update the mesh for both mesh motion and topology change.
Definition: rawTopoChangerFvMesh.C:65
Foam::bitSet
A bitSet stores bits (elements with only two states) in packed internal format and supports a variety...
Definition: bitSet.H:64
topoChangerFvMesh.H
rawTopoChangerFvMeshTemplates.C
bitSet.H
Foam::rawTopoChangerFvMesh
topoChangerFvMesh without any added functionality.
Definition: rawTopoChangerFvMesh.H:56
Foam::rawTopoChangerFvMesh::TypeName
TypeName("rawTopoChangerFvMesh")
Runtime type information.
fld
gmvFile<< "tracers "<< particles.size()<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().x()<< ' ';}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().y()<< ' ';}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().z()<< ' ';}gmvFile<< nl;for(const word &name :lagrangianScalarNames){ IOField< scalar > fld(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
Definition: gmvOutputLagrangian.H:23
Foam::GeoMesh
Generic mesh wrapper used by volMesh, surfaceMesh, pointMesh etc.
Definition: GeoMesh.H:48
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Foam::rawTopoChangerFvMesh::~rawTopoChangerFvMesh
virtual ~rawTopoChangerFvMesh()
Destructor.
Definition: rawTopoChangerFvMesh.C:59
Foam::topoChangerFvMesh
Abstract base class for a topology changing fvMesh.
Definition: topoChangerFvMesh.H:52
Foam::GeometricField
Generic GeometricField class.
Definition: areaFieldsFwd.H:53