15int main(
int argc,
char *argv[]) {
21 moab::Core mb_instance;
22 moab::Interface &moab = mb_instance;
27 const char *option =
"";
28 CHKERR moab.load_file(
"rectangle_tri.h5m", 0, option);
32 auto get_ents_on_mesh_skin = [&]() {
37 CHKERR skin.find_skin(0, faces,
false, skin_edges);
39 CHKERR moab.get_connectivity(skin_edges, skin_verts,
true);
40 skin_edges.merge(skin_verts);
44 auto add_blockset = [&](
const Range skin_ents) {
51 auto print_blocksets = [&]() {
53 for (
auto &it : meshsets_mng->getMeshsetsMultindex())
58 auto check_meshset = [&](
const Range skin_ents) {
60 std::vector<EntityHandle> ents(skin_ents.size());
61 std::copy(skin_ents.begin(), skin_ents.end(), ents.begin());
62 const bool test = meshsets_mng->checkIfMeshsetContainsEntities(
63 1,
BLOCKSET, &*ents.begin(), ents.size());
66 "All entities should be in blockset");
70 auto skin_ents = get_ents_on_mesh_skin();
71 CHKERR add_blockset(skin_ents);
73 CHKERR check_meshset(skin_ents);
static MoFEMErrorCode Initialize(int *argc, char ***args, const char file[], const char help[])
Initializes the MoFEM database PETSc, MOAB and MPI.