| 29 | } |
| 30 | |
| 31 | Partition cellsToPartition(const std::vector<CellBisection> &cells, |
| 32 | const std::vector<std::uint32_t> &permutation) |
| 33 | { |
| 34 | Partition partition(permutation.size(), INVALID_CELL_ID); |
| 35 | CellID cell_id = 0; |
| 36 | for (const auto &cell : cells) |
| 37 | { |
| 38 | std::for_each(permutation.begin() + cell.begin, |
| 39 | permutation.begin() + cell.end, |
| 40 | [&partition, cell_id](const auto node_id) { partition[node_id] = cell_id; }); |
| 41 | cell_id++; |
| 42 | } |
| 43 | BOOST_ASSERT(std::find(partition.begin(), partition.end(), INVALID_CELL_ID) == partition.end()); |
| 44 | |
| 45 | return partition; |
| 46 | } |
| 47 | |
| 48 | void partitionLevel(const std::vector<BisectionID> &node_to_bisection_id, |
| 49 | std::size_t max_cell_size, |
no test coverage detected