![]() |
Reference documentation for deal.II version 9.4.1
|
#include <deal.II/lac/chunk_sparsity_pattern.h>
Public Types | |
using | size_type = types::global_dof_index |
using | const_iterator = ChunkSparsityPatternIterators::Iterator |
using | iterator = ChunkSparsityPatternIterators::Iterator |
Public Member Functions | |
ChunkSparsityPattern () | |
ChunkSparsityPattern (const ChunkSparsityPattern &) | |
ChunkSparsityPattern (const size_type m, const size_type n, const size_type max_chunks_per_row, const size_type chunk_size) | |
ChunkSparsityPattern (const size_type m, const size_type n, const std::vector< size_type > &row_lengths, const size_type chunk_size) | |
ChunkSparsityPattern (const size_type n, const size_type max_per_row, const size_type chunk_size) | |
ChunkSparsityPattern (const size_type m, const std::vector< size_type > &row_lengths, const size_type chunk_size) | |
~ChunkSparsityPattern () override=default | |
ChunkSparsityPattern & | operator= (const ChunkSparsityPattern &) |
void | reinit (const size_type m, const size_type n, const size_type max_per_row, const size_type chunk_size) |
void | reinit (const size_type m, const size_type n, const std::vector< size_type > &row_lengths, const size_type chunk_size) |
void | reinit (const size_type m, const size_type n, const ArrayView< const size_type > &row_lengths, const size_type chunk_size) |
void | compress () |
template<typename ForwardIterator > | |
void | copy_from (const size_type n_rows, const size_type n_cols, const ForwardIterator begin, const ForwardIterator end, const size_type chunk_size) |
template<typename SparsityPatternType > | |
void | copy_from (const SparsityPatternType &dsp, const size_type chunk_size) |
template<typename number > | |
void | copy_from (const FullMatrix< number > &matrix, const size_type chunk_size) |
template<typename Sparsity > | |
void | create_from (const size_type m, const size_type n, const Sparsity &sparsity_pattern_for_chunks, const size_type chunk_size, const bool optimize_diagonal=true) |
bool | empty () const |
size_type | get_chunk_size () const |
size_type | max_entries_per_row () const |
void | add (const size_type i, const size_type j) |
void | symmetrize () |
size_type | n_rows () const |
size_type | n_cols () const |
bool | exists (const size_type i, const size_type j) const |
size_type | row_length (const size_type row) const |
size_type | bandwidth () const |
size_type | n_nonzero_elements () const |
bool | is_compressed () const |
bool | stores_only_added_elements () const |
iterator | begin () const |
iterator | end () const |
iterator | begin (const size_type r) const |
iterator | end (const size_type r) const |
void | block_write (std::ostream &out) const |
void | block_read (std::istream &in) |
void | print (std::ostream &out) const |
void | print_gnuplot (std::ostream &out) const |
std::size_t | memory_consumption () const |
Static Public Member Functions | |
static ::ExceptionBase & | ExcInvalidNumber (size_type arg1) |
static ::ExceptionBase & | ExcInvalidIndex (size_type arg1, size_type arg2) |
static ::ExceptionBase & | ExcNotEnoughSpace (size_type arg1, size_type arg2) |
static ::ExceptionBase & | ExcNotCompressed () |
static ::ExceptionBase & | ExcMatrixIsCompressed () |
static ::ExceptionBase & | ExcEmptyObject () |
static ::ExceptionBase & | ExcIteratorRange (size_type arg1, size_type arg2) |
static ::ExceptionBase & | ExcMETISNotInstalled () |
static ::ExceptionBase & | ExcInvalidNumberOfPartitions (size_type arg1) |
static ::ExceptionBase & | ExcInvalidArraySize (size_type arg1, size_type arg2) |
Static Public Attributes | |
static const size_type | invalid_entry = SparsityPattern::invalid_entry |
Private Attributes | |
size_type | rows |
size_type | cols |
size_type | chunk_size |
SparsityPattern | sparsity_pattern |
Friends | |
template<typename > | |
class | ChunkSparseMatrix |
class | ChunkSparsityPatternIterators::Accessor |
Subscriptor functionality | |
Classes derived from Subscriptor provide a facility to subscribe to this object. This is mostly used by the SmartPointer class. | |
std::atomic< unsigned int > | counter |
std::map< std::string, unsigned int > | counter_map |
std::vector< std::atomic< bool > * > | validity_pointers |
const std::type_info * | object_info |
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) |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
using | map_value_type = decltype(counter_map)::value_type |
using | map_iterator = decltype(counter_map)::iterator |
static std::mutex | mutex |
void | check_no_subscribers () const noexcept |
Structure representing the sparsity pattern of a sparse matrix. This class is an example of the "static" type of Sparsity. It uses the compressed row storage (CSR) format to store data.
The use of this class is demonstrated in step-51.
Definition at line 244 of file chunk_sparsity_pattern.h.