diff --git a/MeshLib/MeshSubset.h b/MeshLib/MeshSubset.h index 7e0e76c50fb86c997a180f7384dfbf73ce09a96f..c356d101cd009b44bbf3054ccafa25d0ce3d5e34 100644 --- a/MeshLib/MeshSubset.h +++ b/MeshLib/MeshSubset.h @@ -75,18 +75,6 @@ public: /// return this mesh ID std::size_t getMeshID() const { return _msh.getID(); } - /// return the number of registered nodes - std::size_t getNumberOfNodes() const { return _nodes.size(); } - - /// Returns the global node id Node::getID() of i-th node in the mesh - /// subset. - /// \pre The _nodes vector must be of size > i. - std::size_t getNodeID(std::size_t const i) const - { - assert(i < _nodes.size()); - return _nodes[i]->getID(); - } - bool useTaylorHoodElements() const { return _use_taylor_hood_elements; } std::vector<Element*>::const_iterator elementsBegin() const diff --git a/NumLib/DOF/MeshComponentMap.cpp b/NumLib/DOF/MeshComponentMap.cpp index 17a2c23187a50e84329d64fba7f092c8f4859b42..df12e28dd547d91e7af169999cca0b49b9597210 100644 --- a/NumLib/DOF/MeshComponentMap.cpp +++ b/NumLib/DOF/MeshComponentMap.cpp @@ -305,12 +305,14 @@ void MeshComponentMap::createSerialMeshComponentMap( for (auto const& c : components) { std::size_t const mesh_id = c.getMeshID(); + auto const& mesh_subset_nodes = c.getNodes(); // mesh items are ordered first by node, cell, .... - for (std::size_t j = 0; j < c.getNumberOfNodes(); j++) + for (std::size_t j = 0; j < mesh_subset_nodes.size(); j++) { - _dict.insert(Line( - Location(mesh_id, MeshLib::MeshItemType::Node, c.getNodeID(j)), - comp_id, global_index++)); + auto const node_id = mesh_subset_nodes[j]->getID(); + _dict.insert( + Line(Location(mesh_id, MeshLib::MeshItemType::Node, node_id), + comp_id, global_index++)); } comp_id++; } @@ -409,7 +411,7 @@ void MeshComponentMap::createParallelMeshComponentMap( int components_at_high_order_nodes = 0; for (auto const& c : components) { - if (partitioned_mesh.getNumberOfNodes() == c.getNumberOfNodes()) + if (partitioned_mesh.getNumberOfNodes() == c.getNodes().size()) { components_at_high_order_nodes++; num_unknowns += partitioned_mesh.getNumberOfGlobalNodes(); @@ -438,9 +440,9 @@ void MeshComponentMap::createParallelMeshComponentMap( const auto& sub_mesh_nodes = c.getNodes(); // mesh items are ordered first by node, cell, .... - for (std::size_t j = 0; j < c.getNumberOfNodes(); j++) + for (std::size_t j = 0; j < sub_mesh_nodes.size(); j++) { - const auto node_id = c.getNodeID(j); + const auto node_id = sub_mesh_nodes[j]->getID(); const bool is_base_node = MeshLib::isBaseNode(*sub_mesh_nodes[j], partitioned_mesh.getElementsConnectedToNode( @@ -479,7 +481,7 @@ void MeshComponentMap::createParallelMeshComponentMap( } bool const use_whole_nodes = - (partitioned_mesh.getNumberOfNodes() == c.getNumberOfNodes()); + (partitioned_mesh.getNumberOfNodes() == c.getNodes().size()); if (use_whole_nodes) { _num_global_dof += partitioned_mesh.getNumberOfGlobalNodes();