39 return _data[node_id].size();
43 std::size_t
const node_id)
const
45 return _data[node_id];
52 auto const& connections =
56 auto const& connected_nodes = connections[node_id];
57 std::vector<std::size_t>& row =
_data[node_id];
58 row.reserve(connected_nodes.size());
59 std::transform(connected_nodes.cbegin(), connected_nodes.cend(),
60 std::back_inserter(row),
61 [](
Node const*
const n) { return n->getID(); });
66 std::vector<std::vector<std::size_t>>
_data;
Definition of the Mesh class.
Definition of the Node class.
std::vector< Node * > const & getNodes() const
Get the nodes-vector for the mesh.
std::size_t getNumberOfNodes() const
Get the number of nodes.
void createTable(Mesh const &mesh)
std::size_t getNodeDegree(std::size_t const node_id) const
std::vector< std::vector< std::size_t > > _data
NodeAdjacencyTable(Mesh const &mesh)
std::vector< std::size_t > const & getAdjacentNodes(std::size_t const node_id) const
constexpr ranges::views::view_closure ids
For an element of a range view return its id.
std::vector< std::vector< Node * > > calculateNodesConnectedByElements(Mesh const &mesh)