![]() |
Reference documentation for deal.II version 8.4.2
|
#include <deal.II/lac/trilinos_precondition.h>
Classes | |
| struct | AdditionalData |
Public Member Functions | |
| void | initialize (const SparseMatrix &matrix, const AdditionalData &additional_data=AdditionalData()) |
Public Member Functions inherited from TrilinosWrappers::PreconditionBase | |
| PreconditionBase () | |
| PreconditionBase (const PreconditionBase &) | |
| ~PreconditionBase () | |
| void | clear () |
| virtual void | vmult (VectorBase &dst, const VectorBase &src) const |
| virtual void | Tvmult (VectorBase &dst, const VectorBase &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 (::parallel::distributed::Vector< double > &dst, const ::parallel::distributed::Vector< double > &src) const |
| virtual void | Tvmult (::parallel::distributed::Vector< double > &dst, const ::parallel::distributed::Vector< double > &src) const |
| Epetra_Operator & | trilinos_operator () const |
| DeclException1 (ExcNonMatchingMaps, std::string,<< "The sparse matrix the preconditioner is based on "<< "uses a map that is not compatible to the one in vector "<< arg1<< ". Check preconditioner and matrix setup.") | |
Public Member Functions inherited from Subscriptor | |
| Subscriptor () | |
| Subscriptor (const Subscriptor &) | |
| virtual | ~Subscriptor () |
| Subscriptor & | operator= (const Subscriptor &) |
| void | subscribe (const char *identifier=0) const |
| void | unsubscribe (const char *identifier=0) const |
| unsigned int | n_subscriptions () const |
| void | list_subscribers () const |
| DeclException3 (ExcInUse, int, char *, std::string &,<< "Object of class "<< arg2<< " is still used by "<< arg1<< " other objects."<< "\"<< "(Additional information: "<< arg3<< ")\"<< "See the entry in the Frequently Asked Questions of "<< "deal.II (linked to from http://www.dealii.org/) for "<< "a lot more information on what this error means and "<< "how to fix programs in which it happens.") | |
| DeclException2 (ExcNoSubscriber, char *, char *,<< "No subscriber with identifier <"<< arg2<< "> subscribes to this object of class "<< arg1<< ". Consequently, it cannot be unsubscribed.") | |
| template<class Archive > | |
| void | serialize (Archive &ar, const unsigned int version) |
Additional Inherited Members | |
Public Types inherited from TrilinosWrappers::PreconditionBase | |
| typedef ::types::global_dof_index | size_type |
Protected Attributes inherited from TrilinosWrappers::PreconditionBase | |
| std_cxx11::shared_ptr< Epetra_Operator > | preconditioner |
| Epetra_MpiComm | communicator |
| std_cxx11::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 1150 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 579 of file trilinos_precondition.cc.
1.8.12