![]() |
Reference documentation for deal.II version 8.4.2
|
#include <deal.II/lac/trilinos_precondition.h>
Classes | |
| struct | AdditionalData |
Public Member Functions | |
| ~PreconditionAMGMueLu () | |
| void | initialize (const SparseMatrix &matrix, const AdditionalData &additional_data=AdditionalData()) |
| void | initialize (const Epetra_CrsMatrix &matrix, const AdditionalData &additional_data=AdditionalData()) |
| void | initialize (const SparseMatrix &matrix, Teuchos::ParameterList &muelu_parameters) |
| void | initialize (const Epetra_CrsMatrix &matrix, Teuchos::ParameterList &muelu_parameters) |
| template<typename number > | |
| void | initialize (const ::SparseMatrix< number > &deal_ii_sparse_matrix, const AdditionalData &additional_data=AdditionalData(), const double drop_tolerance=1e-13, const ::SparsityPattern *use_this_sparsity=0) |
| void | clear () |
| size_type | memory_consumption () const |
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) |
Private Attributes | |
| std_cxx11::shared_ptr< SparseMatrix > | trilinos_matrix |
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 |
This class implements an algebraic multigrid (AMG) preconditioner based on the Trilinos MueLu implementation, which is a black-box preconditioner that works well for many PDE-based linear problems. The interface of PreconditionerAMGMueLu is the same as the interface of PreconditionerAMG except for the higher_order_elements parameter which does not exist in PreconditionerAMGMueLu.
This class requires Trilinos 11.14 or higher.
This interface should not be considered as stable.
Definition at line 1583 of file trilinos_precondition.h.
| TrilinosWrappers::PreconditionAMGMueLu::~PreconditionAMGMueLu | ( | ) |
Destructor.
| void TrilinosWrappers::PreconditionAMGMueLu::initialize | ( | const SparseMatrix & | matrix, |
| const AdditionalData & | additional_data = AdditionalData() |
||
| ) |
Let Trilinos compute a multilevel hierarchy for the solution of a linear system with the given matrix. The function uses the matrix format specified in TrilinosWrappers::SparseMatrix.
| void TrilinosWrappers::PreconditionAMGMueLu::initialize | ( | const Epetra_CrsMatrix & | matrix, |
| const AdditionalData & | additional_data = AdditionalData() |
||
| ) |
Let Trilinos compute a multilevel hierarchy for the solution of a linear system with the given matrix. As opposed to the other initialize function above, this function uses an object of type Epetra_CrsMatrixCrs.
| void TrilinosWrappers::PreconditionAMGMueLu::initialize | ( | const SparseMatrix & | matrix, |
| Teuchos::ParameterList & | muelu_parameters | ||
| ) |
Let Trilinos compute a multilevel hierarchy for the solution of a linear system with the given matrix. The function uses the matrix format specified in TrilinosWrappers::SparseMatrix.
This function is similar to the one above, but allows the user to set most of the options of the Trilinos ML preconditioner. In order to find out about all the options for ML, we refer to the ML user's guide. Not all ML options have a corresponding MueLu option.
| void TrilinosWrappers::PreconditionAMGMueLu::initialize | ( | const Epetra_CrsMatrix & | matrix, |
| Teuchos::ParameterList & | muelu_parameters | ||
| ) |
Let Trilinos compute a multilevel hierarchy for the solution of a linear system with the given matrix. As opposed to the other initialize function above, this function uses an object of type Epetra_CrsMatrix.
| void TrilinosWrappers::PreconditionAMGMueLu::initialize | ( | const ::SparseMatrix< number > & | deal_ii_sparse_matrix, |
| const AdditionalData & | additional_data = AdditionalData(), |
||
| const double | drop_tolerance = 1e-13, |
||
| const ::SparsityPattern * | use_this_sparsity = 0 |
||
| ) |
Let Trilinos compute a multilevel hierarchy for the solution of a linear system with the given matrix. This function takes a deal.ii matrix and copies the content into a Trilinos matrix, so the function can be considered rather inefficient.
| void TrilinosWrappers::PreconditionAMGMueLu::clear | ( | ) |
Destroys the preconditioner, leaving an object like just after having called the constructor.
| size_type TrilinosWrappers::PreconditionAMGMueLu::memory_consumption | ( | ) | const |
Prints an estimate of the memory consumption of this class.
|
private |
A copy of the deal.II matrix into Trilinos format.
Definition at line 1790 of file trilinos_precondition.h.
1.8.12