15#include <jem/base/Array.h>
16#include <jem/base/CString.h>
17#include <jem/base/Class.h>
18#include <jem/base/System.h>
19#include <jem/util/ArrayBuffer.h>
20#include <jem/util/HashDictionary.h>
21#include <jem/util/Properties.h>
23#include <jive/app/Module.h>
24#include <jive/app/ModuleFactory.h>
25#include <jive/app/Names.h>
26#include <jive/fem/ElementGroup.h>
27#include <jive/fem/XElementSet.h>
28#include <jive/fem/XNodeSet.h>
29#include <jive/model/Actions.h>
30#include <jive/model/Model.h>
31#include <jive/model/StateVector.h>
32#include <jive/util/Assignable.h>
33#include <jive/util/DenseTable.h>
34#include <jive/util/DofSpace.h>
35#include <jive/util/FuncUtils.h>
36#include <jive/util/Globdat.h>
37#include <jive/util/XTable.h>
41using jem::newInstance;
48using jive::Properties;
51using jive::StringVector;
54using jive::app::Module;
55using jive::fem::ElementGroup;
56using jive::fem::XElementSet;
57using jive::fem::XNodeSet;
58using jive::model::Model;
59using jive::model::StateVector;
60using jive::util::Assignable;
61using jive::util::DofSpace;
62using jive::util::Function;
63using jive::util::Globdat;
67static_assert(GMSH_API_VERSION_MAJOR == 4,
"Wrong GMSH API version, please use 4.9.5");
68static_assert(GMSH_API_VERSION_MINOR == 9,
"Wrong GMSH API version, please use 4.9.5");
69static_assert(GMSH_API_VERSION_PATCH == 5,
"Wrong GMSH API version, please use 4.9.5");
103 Status
init(
const Properties &conf,
104 const Properties &props,
105 const Properties &globdat)
override;
110 Status
run(
const Properties &globdat)
override;
114 void shutdown(
const Properties &globdat)
override;
122 static Ref<Module>
makeNew(
const String &name,
123 const Properties &conf,
124 const Properties &props,
125 const Properties &globdat);
137 void openMesh_(
const String &geoFile,
const idx_t order);
162 Assignable<XNodeSet> nodes_;
163 std::unordered_map<std::size_t, idx_t> gmshToJiveNodeMap_;
164 Assignable<XElementSet> elements_;
165 std::unordered_map<std::size_t, idx_t> gmshToJiveElemMap_;
173 Ref<Function> sampleCond_;
176 StringVector outTables_;