NEMoSys
0.63.0
A modular, extensible resource with robust automated mesh generation, mesh quality analysis, adaptive mesh refinement, and data transfer between arbitrary meshes.
ManipExoConversionDriver.C
Go to the documentation of this file.
1
/*******************************************************************************
2
* Promesh *
3
* Copyright (C) 2022, IllinoisRocstar LLC. All rights reserved. *
4
* *
5
* Promesh is the property of IllinoisRocstar LLC. *
6
* *
7
* IllinoisRocstar LLC *
8
* Champaign, IL *
9
* www.illinoisrocstar.com *
10
* promesh@illinoisrocstar.com *
11
*******************************************************************************/
12
/*******************************************************************************
13
* This file is part of Promesh *
14
* *
15
* This version of Promesh is free software: you can redistribute it and/or *
16
* modify it under the terms of the GNU Lesser General Public License as *
17
* published by the Free Software Foundation, either version 3 of the License, *
18
* or (at your option) any later version. *
19
* *
20
* Promesh is distributed in the hope that it will be useful, but WITHOUT ANY *
21
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS *
22
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more *
23
* details. *
24
* *
25
* You should have received a copy of the GNU Lesser General Public License *
26
* along with this program. If not, see <https://www.gnu.org/licenses/>. *
27
* *
28
*******************************************************************************/
29
#include "
Drivers/Conversion/ManipExoConversionDriver.H
"
30
31
#include "
Mesh/exoMesh.H
"
32
33
namespace
NEM
{
34
namespace
DRV {
35
36
ManipExoConversionDriver::ManipExoConversionDriver
(
Files
files,
Opts
opts)
37
: files_(
std
::move(files)), opts_(
std
::move(opts)) {}
38
39
ManipExoConversionDriver::ManipExoConversionDriver
()
40
:
ManipExoConversionDriver
(
Files
{{}, {}},
Opts
{{}}) {}
41
42
const
ManipExoConversionDriver::Files
&
ManipExoConversionDriver::getFiles
()
43
const
{
44
return
files_
;
45
}
46
47
void
ManipExoConversionDriver::setFiles
(
Files
files) {
48
this->
files_
= std::move(files);
49
}
50
51
const
ManipExoConversionDriver::Opts
&
ManipExoConversionDriver::getOpts
()
52
const
{
53
return
opts_
;
54
}
55
56
void
ManipExoConversionDriver::setOpts
(
Opts
opts) {
57
this->
opts_
= std::move(opts);
58
}
59
60
void
ManipExoConversionDriver::execute
()
const
{
61
// read in exo mesh from file name
62
NEM::MSH::EXOMesh::exoMesh
em{this->
files_
.
inputMeshFile
};
63
em.read(this->
files_
.
inputMeshFile
);
64
65
// Combining Blocks
66
for
(
const
auto
&cmb : this->
opts_
.
combineBlocks
) {
67
em.combineElmBlks(cmb.blockIds, cmb.newName);
68
}
69
70
// Set the output file name
71
em.setFileName(this->
files_
.
outputMeshFile
);
72
em.write();
73
em.report();
74
}
75
76
}
// namespace DRV
77
}
// namespace NEM
NEM::DRV::DriverInOutFiles::outputMeshFile
std::string outputMeshFile
Definition:
NemDriver.H:91
ManipExoConversionDriver.H
NEM::MSH::EXOMesh::exoMesh
A complete I/O class for EXODUS II file format.
Definition:
exoMesh.H:172
NEM::DRV::ManipExoConversionDriver::getOpts
const Opts & getOpts() const
Definition:
ManipExoConversionDriver.C:51
std
STL namespace.
NEM::DRV::ManipExoConversionDriver::Opts
Definition:
ManipExoConversionDriver.H:50
NEM::DRV::ManipExoConversionDriver
Manipulates an existing EXODUSII mesh.
Definition:
ManipExoConversionDriver.H:41
exoMesh.H
NEM
Definition:
AutoVerificationDriver.C:38
NEM::DRV::ManipExoConversionDriver::ManipExoConversionDriver
ManipExoConversionDriver()
Definition:
ManipExoConversionDriver.C:39
NEM::DRV::ManipExoConversionDriver::setOpts
void setOpts(Opts opts)
Definition:
ManipExoConversionDriver.C:56
NEM::DRV::DriverInOutFiles
Definition:
NemDriver.H:86
NEM::DRV::DriverInOutFiles::inputMeshFile
std::string inputMeshFile
Definition:
NemDriver.H:90
NEM::DRV::ManipExoConversionDriver::opts_
Opts opts_
Definition:
ManipExoConversionDriver.H:71
NEM::DRV::ManipExoConversionDriver::execute
void execute() const override
Run the workflow represented by the driver.
Definition:
ManipExoConversionDriver.C:60
NEM::DRV::ManipExoConversionDriver::setFiles
void setFiles(Files files)
Definition:
ManipExoConversionDriver.C:47
NEM::DRV::ManipExoConversionDriver::getFiles
const Files & getFiles() const
Definition:
ManipExoConversionDriver.C:42
NEM::DRV::ManipExoConversionDriver::files_
Files files_
Definition:
ManipExoConversionDriver.H:70
NEM::DRV::ManipExoConversionDriver::Opts::combineBlocks
std::vector< CombineBlocks > combineBlocks
Definition:
ManipExoConversionDriver.H:51
src
Drivers
Conversion
ManipExoConversionDriver.C
Generated on Wed Jan 26 2022 16:40:01 for NEMoSys by
1.8.13