![]() |
Reference documentation for deal.II version 9.1.1
|
#include <deal.II/lac/trilinos_precondition.h>
Classes | |
struct | AdditionalData |
Public Member Functions | |
void | initialize (const SparseMatrix &matrix, const AdditionalData &additional_data=AdditionalData()) |
![]() | |
PreconditionBase () | |
PreconditionBase (const PreconditionBase &) | |
~PreconditionBase () override=default | |
void | clear () |
MPI_Comm | get_mpi_communicator () const |
void | transpose () |
virtual void | vmult (MPI::Vector &dst, const MPI::Vector &src) const |
virtual void | Tvmult (MPI::Vector &dst, const MPI::Vector &src) const |
virtual void | vmult (::Vector< double > &dst, const ::Vector< double > &src) const |
virtual void | Tvmult (::Vector< double > &dst, const ::Vector< double > &src) const |
virtual void | vmult (::LinearAlgebra::distributed::Vector< double > &dst, const ::LinearAlgebra::distributed::Vector< double > &src) const |
virtual void | Tvmult (::LinearAlgebra::distributed::Vector< double > &dst, const ::LinearAlgebra::distributed::Vector< double > &src) const |
Epetra_Operator & | trilinos_operator () const |
IndexSet | locally_owned_domain_indices () const |
IndexSet | locally_owned_range_indices () const |
![]() | |
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) |
Additional Inherited Members | |
![]() | |
using | size_type = ::types::global_dof_index |
![]() | |
static ::ExceptionBase & | ExcNonMatchingMaps (std::string arg1) |
![]() | |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
![]() | |
Teuchos::RCP< Epetra_Operator > | preconditioner |
Epetra_MpiComm | communicator |
std::shared_ptr< Epetra_Map > | vector_distributor |
A wrapper class for a sparse direct LU decomposition on parallel blocks for Trilinos matrices. When run in serial, this corresponds to a direct solve on the matrix.
The AdditionalData data structure allows to set preconditioner options.
Note that a parallel application of the block direct solve preconditioner is actually a block-Jacobi preconditioner with block size equal to the local matrix size. Spoken more technically, this parallel operation is an additive Schwarz method with an exact solve as inner solver, based on the (outer) parallel partitioning.
Definition at line 1201 of file trilinos_precondition.h.
void TrilinosWrappers::PreconditionBlockwiseDirect::initialize | ( | const SparseMatrix & | matrix, |
const AdditionalData & | additional_data = AdditionalData() |
||
) |
Initialize function. Takes the matrix which is used to form the preconditioner, and additional flags if there are any.
Definition at line 627 of file trilinos_precondition.cc.