void SideConnector::connect_side_to_all_elements(stk::mesh::Entity sideEntity, stk::mesh::Entity elemEntity, int elemSide) { connect_side_to_elem(sideEntity, elemEntity, elemSide); stk::mesh::impl::LocalId elemLocalId = m_entity_to_local_id[elemEntity.local_offset()]; connect_side_to_coincident_elements(sideEntity, elemLocalId, elemSide); connect_side_to_adjacent_elements(sideEntity, elemLocalId, elemSide); }
void SideConnector::connect_side_to_all_elements(stk::mesh::Entity sideEntity, stk::mesh::Entity elemEntity, int elemSide) { //connect_side_to_elem(sideEntity, elemEntity, elemSide); stk::mesh::impl::LocalId elemLocalId = m_localMapper.entity_to_local(elemEntity); connect_side_to_coincident_elements(sideEntity, elemLocalId, elemSide); connect_side_to_adjacent_elements(sideEntity, elemLocalId, elemSide); }
void SideConnector::connect_side_to_adjacent_elements(stk::mesh::Entity sideEntity, stk::mesh::impl::LocalId elemLocalId, int elemSide) { for(const GraphEdge& graphEdge : m_graph.get_edges_for_element(elemLocalId)) { if(graphEdge.side1 == elemSide) { connect_side_entity_to_other_element(sideEntity, graphEdge); connect_side_to_coincident_elements(sideEntity, graphEdge.elem2, graphEdge.side2); } } }