Reference documentation for deal.II version Git 2e2d57a 2014-11-27 22:08:57 +0100
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Classes | Public Types | Public Member Functions | Protected Attributes | Friends | List of all members
TrilinosWrappers::PreconditionBase Class Reference

#include <deal.II/lac/trilinos_precondition.h>

Inheritance diagram for TrilinosWrappers::PreconditionBase:
[legend]

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
 
 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 ()
 
Subscriptoroperator= (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.\n"<< "(Additional information: "<< arg3<< ")\n"<< "Note the entry in the Frequently Asked Questions of "<< "deal.II (linked to from http://www.dealii.org/) for "<< "more information on what this error means.")
 
 DeclException2 (ExcNoSubscriber, char *, char *,<< "No subscriber with identifier \""<< arg2<< "\" did subscribe to this object of class "<< arg1)
 
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
 

Friends

class SolverBase
 
class PreconditionStokes
 

Detailed Description

The base class for all preconditioners based on Trilinos sparse matrices.

Author
Martin Kronbichler, 2008

Definition at line 76 of file trilinos_precondition.h.

Member Typedef Documentation

Declare the type for container size.

Definition at line 82 of file trilinos_precondition.h.

Constructor & Destructor Documentation

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.

TrilinosWrappers::PreconditionBase::PreconditionBase ( const PreconditionBase )

Copy constructor.

TrilinosWrappers::PreconditionBase::~PreconditionBase ( )

Destructor.

Member Function Documentation

void TrilinosWrappers::PreconditionBase::clear ( )

Destroys the preconditioner, leaving an object like just after having called the constructor.

virtual void TrilinosWrappers::PreconditionBase::vmult ( VectorBase dst,
const VectorBase src 
) const
virtual

Apply the preconditioner.

Reimplemented in TrilinosWrappers::PreconditionIdentity.

virtual void TrilinosWrappers::PreconditionBase::Tvmult ( VectorBase dst,
const VectorBase src 
) const
virtual

Apply the transpose preconditioner.

Reimplemented in TrilinosWrappers::PreconditionIdentity.

virtual void TrilinosWrappers::PreconditionBase::vmult ( ::Vector< double > &  dst,
const ::Vector< double > &  src 
) const
virtual

Apply the preconditioner on deal.II data structures instead of the ones provided in the Trilinos wrapper class.

Reimplemented in TrilinosWrappers::PreconditionIdentity.

virtual void TrilinosWrappers::PreconditionBase::Tvmult ( ::Vector< double > &  dst,
const ::Vector< double > &  src 
) const
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 void TrilinosWrappers::PreconditionBase::vmult ( ::parallel::distributed::Vector< double > &  dst,
const ::parallel::distributed::Vector< double > &  src 
) const
virtual

Apply the preconditioner on deal.II parallel data structures instead of the ones provided in the Trilinos wrapper class.

virtual void TrilinosWrappers::PreconditionBase::Tvmult ( ::parallel::distributed::Vector< double > &  dst,
const ::parallel::distributed::Vector< double > &  src 
) const
virtual

Apply the transpose preconditioner on deal.II parallel data structures instead of the ones provided in the Trilinos wrapper class.

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.

Member Data Documentation

std_cxx11::shared_ptr<Epetra_Operator> TrilinosWrappers::PreconditionBase::preconditioner
protected

This is a pointer to the preconditioner object that is used when applying the preconditioner.

Definition at line 172 of file trilinos_precondition.h.

Epetra_MpiComm TrilinosWrappers::PreconditionBase::communicator
protected

Internal communication pattern in case the matrix needs to be copied from deal.II format.

Definition at line 179 of file trilinos_precondition.h.

std_cxx11::shared_ptr<Epetra_Map> TrilinosWrappers::PreconditionBase::vector_distributor
protected

Internal Trilinos map in case the matrix needs to be copied from deal.II format.

Definition at line 188 of file trilinos_precondition.h.


The documentation for this class was generated from the following file: