18#ifdef DEAL_II_WITH_PETSC
46 this->
sub_objects.reinit(n_block_rows, n_block_columns);
61 const std::vector<IndexSet> & cols,
72 std::vector<types::global_dof_index> row_sizes;
77 std::vector<types::global_dof_index> col_sizes;
103 reinit(sizes, sizes, bdsp, com);
114 std::vector<IndexSet>
117 std::vector<IndexSet> index_sets;
120 index_sets.push_back(this->block(0, i).locally_owned_domain_indices());
125 std::vector<IndexSet>
128 std::vector<IndexSet> index_sets;
131 index_sets.push_back(this->block(i, 0).locally_owned_range_indices());
139 return block(0, 0).get_mpi_communicator();
void reinit(const unsigned int n_blocks, const size_type n_elements_per_block)
virtual void reinit(const SparsityPattern &sparsity)
Subscriptor & operator=(const Subscriptor &)
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
BlockIndices column_block_indices
Table< 2, SmartPointer< BlockType, BlockMatrixBase< SparseMatrix > > > sub_objects
#define Assert(cond, exc)
BlockIndices row_block_indices
static ::ExceptionBase & ExcMessage(std::string arg1)
unsigned int n_block_rows() const
unsigned int n_block_cols() const
BlockType & block(const unsigned int row, const unsigned int column)
void reinit(const size_type n_block_rows, const size_type n_block_columns)
BlockSparseMatrix & operator=(const BlockSparseMatrix &)
BaseClass::BlockType BlockType
std::vector< IndexSet > locally_owned_domain_indices() const
const MPI_Comm & get_mpi_communicator() const
std::vector< IndexSet > locally_owned_range_indices() const
size_type n_block_rows() const
SparsityPatternType & block(const size_type row, const size_type column)
size_type n_block_cols() const