 |
Reference documentation for deal.II version 9.1.1
|
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
16 #ifndef dealii_sparse_vanka_h
17 #define dealii_sparse_vanka_h
21 #include <deal.II/base/config.h>
23 #include <deal.II/base/multithread_info.h>
24 #include <deal.II/base/smartpointer.h>
29 DEAL_II_NAMESPACE_OPEN
31 template <
typename number>
33 template <
typename number>
35 template <
typename number>
38 template <
typename number>
40 template <
typename number>
136 template <
typename number>
180 const bool conserve_memory =
false,
198 const bool conserve_memory =
false,
237 template <
typename number2>
245 template <
typename number2>
291 template <
typename number2>
295 const std::vector<bool> *
const dof_mask =
nullptr)
const;
380 template <
typename T>
519 template <
typename number>
551 const bool conserve_memory =
false,
557 template <
typename number2>
559 vmult(Vector<number2> &dst,
const Vector<number2> &src)
const;
598 template <
typename number>
606 template <
typename number>
614 template <
typename number>
615 template <
typename number2>
618 const Vector<number2> & )
const
625 DEAL_II_NAMESPACE_CLOSE
void Tvmult(Vector< number2 > &dst, const Vector< number2 > &src) const
const unsigned int n_blocks
SparseBlockVanka(const SparseMatrix< number > &M, const std::vector< bool > &selected, const unsigned int n_blocks, const BlockingStrategy blocking_strategy, const bool conserve_memory=false, const unsigned int n_threads=MultithreadInfo::n_threads())
static unsigned int n_threads()
static ::ExceptionBase & ExcNotImplemented()
AdditionalData(const std::vector< bool > &selected, const bool conserve_memory=false, const unsigned int n_threads=MultithreadInfo::n_threads())
void initialize(const SparseMatrix< number > &M, const AdditionalData &additional_data)
void compute_dof_masks(const SparseMatrix< number > &M, const std::vector< bool > &selected, const BlockingStrategy blocking_strategy)
void compute_inverse(const size_type row, std::vector< size_type > &local_indices)
std::vector< SmartPointer< FullMatrix< float >, SparseVanka< number > > > inverses
const std::vector< bool > & selected
const std::vector< bool > * selected
std::vector< std::vector< bool > > dof_masks
void vmult(Vector< number2 > &dst, const Vector< number2 > &src) const
unsigned int global_dof_index
void vmult(Vector< number2 > &dst, const Vector< number2 > &src) const
std::size_t memory_consumption() const
SmartPointer< const SparseMatrix< number >, SparseVanka< number > > matrix
static ::ExceptionBase & ExcNotInitialized()
LinearAlgebra::distributed::Vector< Number > Vector
#define Assert(cond, exc)
types::global_dof_index size_type
const unsigned int n_threads
void apply_preconditioner(Vector< number2 > &dst, const Vector< number2 > &src, const std::vector< bool > *const dof_mask=nullptr) const
#define AssertThrow(cond, exc)
std::size_t memory_consumption() const