Reference documentation for deal.II version 9.4.1
|
#include <deal.II/lac/trilinos_precondition.h>
Classes | |
struct | AdditionalData |
Public Types | |
using | size_type = ::types::global_dof_index |
Public Member Functions | |
void | initialize (const SparseMatrix &matrix, const AdditionalData &additional_data=AdditionalData()) |
void | clear () |
MPI_Comm | get_mpi_communicator () const |
void | transpose () |
virtual void | vmult (MPI::Vector &dst, const MPI::Vector &src) const |
virtual void | vmult (::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 (MPI::Vector &dst, const MPI::Vector &src) const |
virtual void | Tvmult (::Vector< double > &dst, const ::Vector< double > &src) const |
virtual void | Tvmult (::LinearAlgebra::distributed::Vector< double > &dst, const ::LinearAlgebra::distributed::Vector< double > &src) const |
Access to underlying Trilinos data | |
Epetra_Operator & | trilinos_operator () const |
Partitioners | |
IndexSet | locally_owned_domain_indices () const |
IndexSet | locally_owned_range_indices () const |
Teuchos::RCP< Epetra_Operator > | preconditioner |
Epetra_MpiComm | communicator |
std::shared_ptr< Epetra_Map > | vector_distributor |
static ::ExceptionBase & | ExcNonMatchingMaps (std::string arg1) |
Subscriptor functionality | |
Classes derived from Subscriptor provide a facility to subscribe to this object. This is mostly used by the SmartPointer class. | |
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) |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
using | map_value_type = decltype(counter_map)::value_type |
using | map_iterator = decltype(counter_map)::iterator |
std::atomic< unsigned int > | counter |
std::map< std::string, unsigned int > | counter_map |
std::vector< std::atomic< bool > * > | validity_pointers |
const std::type_info * | object_info |
static std::mutex | mutex |
void | check_no_subscribers () const noexcept |
A wrapper class for a (pointwise) Jacobi preconditioner for Trilinos matrices. This preconditioner works both in serial and in parallel, depending on the matrix it is based on.
The AdditionalData data structure allows to set preconditioner options. For the Jacobi preconditioner, these options are the damping parameter omega
and a min_diagonal
argument that can be used to make the preconditioner work even if the matrix contains some zero elements on the diagonal. The default settings are 1 for the damping parameter and zero for the diagonal augmentation.
Definition at line 263 of file trilinos_precondition.h.