90 DMType dm_name =
"DMMOFEM";
94 CHKERR simple_interface->getOptions();
95 CHKERR simple_interface->loadFile(
"");
96 CHKERR simple_interface->addDomainField(
"FIELD1",
H1,
98 CHKERR simple_interface->setFieldOrder(
"FIELD1",
order);
99 CHKERR simple_interface->setUp();
101 auto get_ents_on_mesh_skin = [&]() {
106 CHKERR skin.find_skin(0, faces,
false, skin_edges);
108 CHKERR moab.get_connectivity(skin_edges, skin_verts,
true);
109 skin_edges.merge(skin_verts);
113 auto mark_boundary_dofs = [&](
Range &skin_edges) {
115 std::vector<unsigned char>
marker;
116 problem_manager->markDofs(simple_interface->getProblemName(),
ROW,
117 ProblemsManager::OR, skin_edges,
marker);
119 problem_manager->modifyMarkDofs(simple_interface->getProblemName(),
ROW,
120 "FIELD1", 1, 1, ProblemsManager::AND, 0,
125 auto skin_ents = get_ents_on_mesh_skin();
130 auto marker = mark_boundary_dofs(skin_ents);
132 boost::shared_ptr<FaceEle> fe(
new FaceEle(m_field));
133 fe->getOpPtrVector().push_back(
new OpFace(skin_ents,
marker));
135 auto dm = simple_interface->getDM();