Reference documentation for deal.II version Git f0919993dd 2020-09-21 18:25:06 -0600
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Classes | Public Types | Public Member Functions | Protected Attributes | List of all members
PreconditionRelaxation< MatrixType > Class Template Reference

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

Inheritance diagram for PreconditionRelaxation< MatrixType >:
[legend]

Classes

class  AdditionalData
 

Public Types

using size_type = typename MatrixType::size_type
 

Public Member Functions

void initialize (const MatrixType &A, const AdditionalData &parameters=AdditionalData())
 
void clear ()
 
size_type m () const
 
size_type n () const
 
- Public Member Functions inherited from Subscriptor
 Subscriptor ()
 
 Subscriptor (const Subscriptor &)
 
 Subscriptor (Subscriptor &&) noexcept
 
virtual ~Subscriptor ()
 
Subscriptoroperator= (const Subscriptor &)
 
Subscriptoroperator= (Subscriptor &&) noexcept
 
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)
 

Protected Attributes

SmartPointer< const MatrixType, PreconditionRelaxation< MatrixType > > A
 
double relaxation
 

Additional Inherited Members

- Static Public Member Functions inherited from Subscriptor
static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
 
static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
 

Detailed Description

template<typename MatrixType = SparseMatrix<double>>
class PreconditionRelaxation< MatrixType >

Base class for other preconditioners. Here, only some common features Jacobi, SOR and SSOR preconditioners are implemented. For preconditioning, refer to derived classes.

Definition at line 400 of file precondition.h.

Member Typedef Documentation

◆ size_type

template<typename MatrixType = SparseMatrix<double>>
using PreconditionRelaxation< MatrixType >::size_type = typename MatrixType::size_type

Declare type for container size.

Definition at line 406 of file precondition.h.

Member Function Documentation

◆ initialize()

template<typename MatrixType = SparseMatrix<double>>
void PreconditionRelaxation< MatrixType >::initialize ( const MatrixType &  A,
const AdditionalData parameters = AdditionalData() 
)

Initialize matrix and relaxation parameter. The matrix is just stored in the preconditioner object. The relaxation parameter should be larger than zero and smaller than 2 for numerical reasons. It defaults to 1.

◆ clear()

template<typename MatrixType = SparseMatrix<double>>
void PreconditionRelaxation< MatrixType >::clear ( )

Release the matrix and reset its pointer.

◆ m()

template<typename MatrixType = SparseMatrix<double>>
size_type PreconditionRelaxation< MatrixType >::m ( ) const

Return the dimension of the codomain (or range) space. Note that the matrix is of dimension \(m \times n\).

◆ n()

template<typename MatrixType = SparseMatrix<double>>
size_type PreconditionRelaxation< MatrixType >::n ( ) const

Return the dimension of the domain space. Note that the matrix is of dimension \(m \times n\).

Member Data Documentation

◆ A

template<typename MatrixType = SparseMatrix<double>>
SmartPointer<const MatrixType, PreconditionRelaxation<MatrixType> > PreconditionRelaxation< MatrixType >::A
protected

Pointer to the matrix object.

Definition at line 458 of file precondition.h.

◆ relaxation

template<typename MatrixType = SparseMatrix<double>>
double PreconditionRelaxation< MatrixType >::relaxation
protected

Relaxation parameter.

Definition at line 463 of file precondition.h.


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