16 #ifndef dealii_sparsity_tools_h 17 #define dealii_sparsity_tools_h 20 #include <deal.II/base/config.h> 21 #include <deal.II/base/exceptions.h> 22 #include <deal.II/lac/block_sparsity_pattern.h> 23 #include <deal.II/lac/dynamic_sparsity_pattern.h> 24 #include <deal.II/lac/sparsity_pattern.h> 29 #ifdef DEAL_II_WITH_MPI 31 #include <deal.II/base/index_set.h> 34 DEAL_II_NAMESPACE_OPEN
102 const unsigned int n_partitions,
103 std::vector<unsigned int> &partition_indices,
119 const std::vector<unsigned int> &cell_weights,
120 const unsigned int n_partitions,
121 std::vector<unsigned int> &partition_indices,
158 std::vector<unsigned int> &color_indices);
211 std::vector<DynamicSparsityPattern::size_type> &new_indices,
212 const std::vector<DynamicSparsityPattern::size_type> &starting_indices = std::vector<DynamicSparsityPattern::size_type>());
237 std::vector<DynamicSparsityPattern::size_type> &new_indices);
239 #ifdef DEAL_II_WITH_MPI 266 const std::vector<DynamicSparsityPattern::size_type> &rows_per_cpu,
267 const MPI_Comm &mpi_comm,
284 const std::vector<IndexSet> &owned_set_per_cpu,
285 const MPI_Comm &mpi_comm,
295 "The function you called requires METIS, but you did not " 296 "configure deal.II with METIS.");
303 <<
"The number of partitions you gave is " << arg1
304 <<
", but must be greater than zero.");
311 <<
" An error with error number " << arg1
312 <<
" occurred while calling a METIS function");
319 <<
"The array has size " << arg1 <<
" but should have size " 325 "The function you called requires ZOLTAN, but you did not " 326 "configure deal.II with ZOLTAN or zoltan_cpp.h is not available.");
333 DEAL_II_NAMESPACE_CLOSE
#define DeclException2(Exception2, type1, type2, outsequence)
static ::ExceptionBase & ExcMETISNotInstalled()
static ::ExceptionBase & ExcInvalidNumberOfPartitions(int arg1)
#define DeclException1(Exception1, type1, outsequence)
static ::ExceptionBase & ExcInvalidArraySize(int arg1, int arg2)
#define DeclExceptionMsg(Exception, defaulttext)
static ::ExceptionBase & ExcZOLTANNotInstalled()
static ::ExceptionBase & ExcMETISError(int arg1)