![]() |
Reference documentation for deal.II version 8.4.2
|
#include <deal.II/lac/trilinos_precondition.h>
Classes | |
| struct | AdditionalData |
Public Types | |
| typedef ::types::global_dof_index | size_type |
Public Member Functions | |
| 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) |
Protected Attributes | |
| std_cxx11::shared_ptr< Epetra_Operator > | preconditioner |
| Epetra_MpiComm | communicator |
| std_cxx11::shared_ptr< Epetra_Map > | vector_distributor |
The base class for all preconditioners based on Trilinos sparse matrices.
Definition at line 77 of file trilinos_precondition.h.
Declare the type for container size.
Definition at line 83 of file trilinos_precondition.h.
| TrilinosWrappers::PreconditionBase::PreconditionBase | ( | ) |
Constructor. Does not do anything. The initialize function of the derived classes will have to create the preconditioner from a given sparse matrix.
Definition at line 37 of file trilinos_precondition.cc.
| TrilinosWrappers::PreconditionBase::PreconditionBase | ( | const PreconditionBase & | base | ) |
Copy constructor.
Definition at line 46 of file trilinos_precondition.cc.
| TrilinosWrappers::PreconditionBase::~PreconditionBase | ( | ) |
Destructor.
Definition at line 58 of file trilinos_precondition.cc.
| void TrilinosWrappers::PreconditionBase::clear | ( | ) |
Destroys the preconditioner, leaving an object like just after having called the constructor.
Definition at line 63 of file trilinos_precondition.cc.
|
virtual |
Apply the preconditioner.
Reimplemented in TrilinosWrappers::PreconditionIdentity.
|
virtual |
Apply the transpose preconditioner.
Reimplemented in TrilinosWrappers::PreconditionIdentity.
|
virtual |
Apply the preconditioner on deal.II data structures instead of the ones provided in the Trilinos wrapper class.
Reimplemented in TrilinosWrappers::PreconditionIdentity.
|
virtual |
Apply the transpose preconditioner on deal.II data structures instead of the ones provided in the Trilinos wrapper class.
Reimplemented in TrilinosWrappers::PreconditionIdentity.
|
virtual |
Apply the preconditioner on deal.II parallel data structures instead of the ones provided in the Trilinos wrapper class.
|
virtual |
Apply the transpose preconditioner on deal.II parallel data structures instead of the ones provided in the Trilinos wrapper class.
| Epetra_Operator& TrilinosWrappers::PreconditionBase::trilinos_operator | ( | ) | const |
Return a reference to the underlaying Trilinos Epetra_Operator. So you can use the preconditioner with unwrapped Trilinos solver.
Calling this function from an uninitialized object will cause an exception.
| TrilinosWrappers::PreconditionBase::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." | |||
| ) |
Exception.
|
protected |
This is a pointer to the preconditioner object that is used when applying the preconditioner.
Definition at line 181 of file trilinos_precondition.h.
|
protected |
Internal communication pattern in case the matrix needs to be copied from deal.II format.
Definition at line 188 of file trilinos_precondition.h.
|
protected |
Internal Trilinos map in case the matrix needs to be copied from deal.II format.
Definition at line 197 of file trilinos_precondition.h.
1.8.12