Reference documentation for deal.II version GIT relicensing669gbd74b205fb 20240518 16:30:02+00:00

#include <deal.II/lac/trilinos_precondition.h>
Public Member Functions  
AdditionalData (const double omega=1, const double min_diagonal=0, const unsigned int overlap=0, const unsigned int n_sweeps=1)  
Public Attributes  
double  omega 
double  min_diagonal 
unsigned int  overlap 
unsigned int  n_sweeps 
Standardized data struct to pipe additional flags to the preconditioner. The parameter omega
specifies the relaxation parameter in the SSOR preconditioner. The parameter min_diagonal
can be used to make the application of the preconditioner also possible when some diagonal elements are zero. In a default application this would mean that we divide by zero, so by setting the parameter min_diagonal
to a small nonzero value the SOR will work on a matrix that is not too far away from the one we want to treat. Finally, overlap
governs the overlap of the partitions when the preconditioner runs in parallel, forming a socalled additive Schwarz preconditioner.
Definition at line 344 of file trilinos_precondition.h.
TrilinosWrappers::PreconditionSSOR::AdditionalData::AdditionalData  (  const double  omega = 1 , 
const double  min_diagonal = 0 , 

const unsigned int  overlap = 0 , 

const unsigned int  n_sweeps = 1 

) 
Constructor. By default, set the damping parameter to one, we do not modify the diagonal, and there is no overlap (i.e. in parallel, we run a BlockJacobi preconditioner, where each block is inverted approximately by an SSOR).
Definition at line 129 of file trilinos_precondition.cc.
double TrilinosWrappers::PreconditionSSOR::AdditionalData::omega 
This specifies the (over) relaxation parameter in the SSOR preconditioner.
Definition at line 361 of file trilinos_precondition.h.
double TrilinosWrappers::PreconditionSSOR::AdditionalData::min_diagonal 
This specifies the minimum value the diagonal elements should have. This might be necessary when the SSOR preconditioner is used on matrices with zero diagonal elements. In that case, a straightforward application would not be possible since we divide by the diagonal element.
Definition at line 370 of file trilinos_precondition.h.
unsigned int TrilinosWrappers::PreconditionSSOR::AdditionalData::overlap 
This determines how large the overlap of the local matrix portions on each processor in a parallel application should be.
Definition at line 376 of file trilinos_precondition.h.
unsigned int TrilinosWrappers::PreconditionSSOR::AdditionalData::n_sweeps 
Sets how many times the given operation should be applied during the vmult() operation.
Definition at line 382 of file trilinos_precondition.h.