Partitioner System
The Partitioner System allows the developer to control the partitioning process to split up a mesh among two or more processors. There are several partitioners available in both PETSc and libMesh which can be directly dialed up through the MOOSE input file via the LibmeshPartitioner and PetscExternalPartitioner objects. Custom Partitioners may be built by inheriting from MoosePartitioner.md and overriding the special _do_partition()
method (from libMesh's partitioner).
Available Objects
- Moose App
- BlockWeightedPartitionerPartition mesh by weighting blocks
- GridPartitionerCreate a uniform grid that overlays the mesh to be partitioned. Assign all elements within each cell of the grid to the same processor.
- HierarchicalGridPartitionerPartitions a mesh into sub-partitions for each computational node then into partitions within that node. All partitions are made using a regular grid.
- LibmeshPartitionerMesh partitioning using capabilities defined in libMesh.
- PetscExternalPartitionerPartition mesh using external packages via PETSc MatPartitioning interface
- RandomPartitionerAssigns element processor ids randomly with a given seed.
- SingleRankPartitionerAssigns element processor ids to a single MPI rank.
Available Actions
- Moose App
- PartitionerActionAdd a Partitioner object to the simulation.