output << "After initParallel(), Mesh object on each processor is a local partionated mesh containing ghost elements" << std::endl;
printMeshContent(mesh);
output << "Nodes are also partionated and new node types are defined:" << std::endl;
printNodeList(mesh);
output << "-3: pure ghost node -> not a local node" << std::endl
<< "-2: master node -> node shared with other processor(s) -> local and global node" <<std::endl
<< ">0: slave node -> -> node shared with other processor(s) -> only local node (its id is the rank of the processor owning the master node)" <<std::endl;
output << "Each local node has a corresponding global id used during assembly: " <<std::endl;
getGlobalIDs(mesh);
Mesh & mesh_facets = mesh.getMeshFacets();
output << "Within cohesive element model, initParallel() creates a second Mesh object usually called mesh_facet" << std::endl
<< "This Mesh object contains all sub-dimensional elements where potential cohesive element can be inserted" << std::endl;