|
template<size_t DIMENSION, size_t MESH_DIMENSION> |
std::set< size_t > | flecsi::topo::unstructured_impl::naive_coloring (definition< MESH_DIMENSION > &md) |
|
template<std::size_t DIMENSION, std::size_t FROM_DIMENSION = DIMENSION, std::size_t TO_DIMENSION = DIMENSION, std::size_t THRU_DIMENSION = DIMENSION - 1> |
util::dcrs | flecsi::topo::unstructured_impl::make_dcrs (const definition< DIMENSION > &md) |
|
template<std::size_t DIMENSION, std::size_t FROM_DIMENSION = DIMENSION, std::size_t TO_DIMENSION = DIMENSION, std::size_t THRU_DIMENSION = DIMENSION - 1> |
void | flecsi::topo::unstructured_impl::make_dcrs_have_connectivity (const definition< DIMENSION > &md, util::dcrs &dcrs) |
| Create distributed CRS representation of the graph.
|
|
template<typename SEND_TYPE , typename ID_TYPE , typename RECV_TYPE > |
auto | flecsi::topo::unstructured_impl::alltoallv (const SEND_TYPE &sendbuf, const ID_TYPE &sendcounts, const ID_TYPE &senddispls, RECV_TYPE &recvbuf, const ID_TYPE &recvcounts, const ID_TYPE &recvdispls, decltype(MPI_COMM_WORLD) comm) |
|
template<typename T , typename Vector > |
T | flecsi::topo::unstructured_impl::rank_owner (const Vector &distribution, T i) |
| Simple utility for determining which rank owns an id.
|
|
template<typename Vector > |
void | flecsi::topo::unstructured_impl::subdivide (size_t nelem, size_t npart, Vector &dist) |
| A simple utility for subdividing an index space into several parts.
|
|
template<std::size_t MESH_DIMENSION> |
void | flecsi::topo::unstructured_impl::make_dcrs_distributed (const parallel_definition< MESH_DIMENSION > &md, size_t from_dimension, size_t to_dimension, size_t min_connections, util::dcrs &dcrs) |
| Create distributed CRS representation of the graph.
|
|
template<std::size_t DIMENSION> |
void | flecsi::topo::unstructured_impl::migrate (size_t dimension, const std::vector< size_t > &partitioning, util::dcrs &dcrs, parallel_definition< DIMENSION > &md) |
| Migrate pieces of a mesh from one processor to another.
|
|
void | flecsi::topo::unstructured_impl::get_owner_info (const util::dcrs &dcrs, index_coloring &entities, coloring_info &color_info) |
|
template<std::size_t MESH_DIMENSION> |
void | flecsi::topo::unstructured_impl::match_ids (const parallel_definition< MESH_DIMENSION > &md, size_t dimension, std::vector< size_t > &local2global, std::map< size_t, size_t > &global2local) |
| Color an auxiliary index space like vertices or edges. More...
|
|
void | flecsi::topo::unstructured_impl::ghost_connectivity (const util::crs &from2to, const std::vector< size_t > &local2global, const index_coloring &from_entities, std::vector< size_t > &from_ids, util::crs &connectivity) |
| Color an auxiliary index space like vertices or edges.
|
|
template<std::size_t MESH_DIMENSION> |
void | flecsi::topo::unstructured_impl::ghost_connectivity (const parallel_definition< MESH_DIMENSION > &md, size_t from_dimension, size_t to_dimension, const index_coloring &from_entities, std::vector< size_t > &from_ids, util::crs &connectivity) |
|
template<std::size_t DIMENSION, std::size_t FROM_DIMENSION = DIMENSION, std::size_t TO_DIMENSION = DIMENSION, std::size_t THRU_DIMENSION = DIMENSION - 1>
util::dcrs flecsi::topo::unstructured_impl::make_dcrs |
( |
const definition< DIMENSION > & |
md | ) |
|
|
inline |
Create distributed CRS representation of the graph defined by entities of FROM_DIMENSION to TO_DIMENSION through THRU_DIMENSION. The return object will be populated with a naive partitioning suitable for use with coloring tools, e.g., ParMETIS.
- Template Parameters
-
FROM_DIMENSION | The topological dimension of the entity for which the partitioning is requested. |
TO_DIMENSION | The topological dimension to search for neighbors. |
THRU_DIMENSION | The topological dimension through which the neighbor connection exists. |
- Parameters
-