simplifiedDynamicFvMeshTemplates.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) 2018-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 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
29 
30 template<class DynamicMeshType>
33 (
34  const Time& runTime,
35  const word& regionName
36 )
37 :
40  DynamicMeshType
41  (
42  IOobject
43  (
44  regionName,
45  runTime.constant(),
46  runTime,
47  IOobject::NO_READ, // Do not read any existing mesh
48  IOobject::NO_WRITE
49  ),
50  std::move(points1D_),
51  std::move(faces1D_),
52  std::move(owner1D_),
53  std::move(neighbour1D_)
54  )
55 {
56  // Workaround to read fvSchemes and fvSolution after setting NO_READ
57  // when creating the mesh
58  {
63  }
64 
65  // Add the patches
66  addLocalPatches(*this);
67 
68  // Add the zones if constructed from mesh
69  initialiseZones(*this);
70 }
71 
72 
73 // ************************************************************************* //
readOption readOpt() const noexcept
Get the read option.
bool read()
Read the solution dictionary.
Definition: solution.C:442
engineTime & runTime
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Definition: Time.H:69
A class for handling words, derived from Foam::string.
Definition: word.H:63
void addLocalPatches(fvMesh &mesh) const
Add the patches to the mesh.
Definition: columnFvMesh.C:318
Foam::word regionName(args.getOrDefault< word >("region", Foam::polyMesh::defaultRegion))
SimplifiedDynamicFvMesh(const Time &runTime, const word &regionName)
Constructor.
Defines the attributes of an object for which implicit objectRegistry management is supported...
Definition: IOobject.H:172
void initialiseZones(fvMesh &mesh)
Initialise zones if constructed from mesh.
Definition: columnFvMesh.C:379
bool read()
Read schemes from IOdictionary, respects the "select" keyword.