Reference documentation for deal.II version Git f0d9923401 2020-09-28 19:47:38 -0600

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

## Public Member Functions

AdditionalData (const unsigned int symmetric=1, const unsigned int n_levels=1, const double threshold=0.1, const double filter=0.05, const bool output_details=false)

## Public Attributes

unsigned int symmetric

unsigned int n_levels

double threshold

double filter

bool output_details

## Detailed Description

Standardized data struct to pipe additional flags to the preconditioner.

Definition at line 813 of file petsc_precondition.h.

## Constructor & Destructor Documentation

 PETScWrappers::PreconditionParaSails::AdditionalData::AdditionalData ( const unsigned int symmetric = 1, const unsigned int n_levels = 1, const double threshold = 0.1, const double filter = 0.05, const bool output_details = false )

Constructor.

Definition at line 560 of file petsc_precondition.cc.

## ◆ symmetric

This parameter specifies the type of problem to solve:

• 0: nonsymmetric and/or indefinite problem, and nonsymmetric preconditioner
• 1: SPD problem, and SPD (factored) preconditioner
• 2: nonsymmetric, definite problem, and SPD (factored) preconditioner

Default is symmetric = 1.

Definition at line 835 of file petsc_precondition.h.

## ◆ n_levels

The sparsity pattern used for the approximate inverse is the pattern of a power B^m where B has been sparsified from the given matrix A, n_level is equal to m+1. Default value is n_levels = 1.

Definition at line 843 of file petsc_precondition.h.

## ◆ threshold

Sparsification is performed by dropping nonzeros which are smaller than thresh in magnitude. Lower values of thresh lead to more accurate, but also more expensive preconditioners. Default value is thresh = 0.1. Setting thresh < 0 a threshold is selected automatically, such that -thresh represents the fraction of nonzero elements that are dropped. For example, if thresh = -0.9, then B will contain about ten percent of the nonzeros of the given matrix A.

Definition at line 855 of file petsc_precondition.h.

## ◆ filter

Filtering is a post-processing procedure, filter represents a fraction of nonzero elements that are dropped after creating the approximate inverse sparsity pattern. Default value is filter = 0.05. Setting filter < 0 a value is selected automatically, such that -filter represents the fraction of nonzero elements that are dropped. For example, if thresh = -0.9, then about 90 percent of the entries in the computed approximate inverse are dropped.

Definition at line 867 of file petsc_precondition.h.