![]() |
Reference documentation for deal.II version 9.1.1
|
#include <deal.II/lac/block_sparsity_pattern.h>
Public Member Functions | |
| BlockDynamicSparsityPattern ()=default | |
| BlockDynamicSparsityPattern (const size_type n_rows, const size_type n_columns) | |
| BlockDynamicSparsityPattern (const std::vector< size_type > &row_block_sizes, const std::vector< size_type > &col_block_sizes) | |
| BlockDynamicSparsityPattern (const std::vector< IndexSet > &partitioning) | |
| BlockDynamicSparsityPattern (const BlockIndices &row_indices, const BlockIndices &col_indices) | |
| void | reinit (const std::vector< size_type > &row_block_sizes, const std::vector< size_type > &col_block_sizes) |
| void | reinit (const std::vector< IndexSet > &partitioning) |
| void | reinit (const BlockIndices &row_indices, const BlockIndices &col_indices) |
| size_type | column_number (const size_type row, const unsigned int index) const |
Public Member Functions inherited from BlockSparsityPatternBase< DynamicSparsityPattern > | |
| BlockSparsityPatternBase () | |
| BlockSparsityPatternBase (const size_type n_block_rows, const size_type n_block_columns) | |
| BlockSparsityPatternBase (const BlockSparsityPatternBase &bsp) | |
| ~BlockSparsityPatternBase () override | |
| void | reinit (const size_type n_block_rows, const size_type n_block_columns) |
| BlockSparsityPatternBase & | operator= (const BlockSparsityPatternBase &) |
| void | collect_sizes () |
| DynamicSparsityPattern & | block (const size_type row, const size_type column) |
| const DynamicSparsityPattern & | block (const size_type row, const size_type column) const |
| const BlockIndices & | get_row_indices () const |
| const BlockIndices & | get_column_indices () const |
| void | compress () |
| size_type | n_block_rows () const |
| size_type | n_block_cols () const |
| bool | empty () const |
| size_type | max_entries_per_row () const |
| void | add (const size_type i, const size_type j) |
| void | add_entries (const size_type row, ForwardIterator begin, ForwardIterator end, const bool indices_are_sorted=false) |
| size_type | n_rows () const |
| size_type | n_cols () const |
| bool | exists (const size_type i, const size_type j) const |
| unsigned int | row_length (const size_type row) const |
| size_type | n_nonzero_elements () const |
| void | print (std::ostream &out) const |
| void | print_gnuplot (std::ostream &out) const |
Public Member Functions inherited from Subscriptor | |
| Subscriptor () | |
| Subscriptor (const Subscriptor &) | |
| Subscriptor (Subscriptor &&) noexcept | |
| virtual | ~Subscriptor () |
| Subscriptor & | operator= (const Subscriptor &) |
| Subscriptor & | operator= (Subscriptor &&) noexcept |
| void | subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
| void | unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
| unsigned int | n_subscriptions () const |
| template<typename StreamType > | |
| void | list_subscribers (StreamType &stream) const |
| void | list_subscribers () const |
| template<class Archive > | |
| void | serialize (Archive &ar, const unsigned int version) |
This class extends the base class to implement an array of compressed sparsity patterns that can be used to initialize objects of type BlockSparsityPattern. It does not add additional member functions, but rather acts as an alias to introduce the name of this class, without requiring the user to specify the templated name of the base class. For information on the interface of this class refer to the base class. The individual blocks are based on the DynamicSparsityPattern class.
This class is an example of the "dynamic" type of Sparsity patterns.
Usage of this class is very similar to DynamicSparsityPattern, but since the use of block indices causes some additional complications, we give a short example.
After the DoFHandler dof and the AffineConstraints constraints have been set up with a system element, we must count the degrees of freedom in each matrix block:
Now, we are ready to set up the BlockDynamicSparsityPattern.
It is filled as if it were a normal pattern
In the end, it is copied to a normal BlockSparsityPattern for later use.
Definition at line 509 of file block_sparsity_pattern.h.
1.8.16