Reference documentation for deal.II version Git 01d13113a1 2020-07-10 09:14:01 +0200

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

## Public Member Functions

AdditionalData (const double strengthen_diagonal=0, const unsigned int extra_off_diagonals=0, const bool use_previous_sparsity=false, const SparsityPattern *use_this_sparsity=nullptr)

## Public Attributes

double strengthen_diagonal

unsigned int extra_off_diagonals

bool use_previous_sparsity

const SparsityPatternuse_this_sparsity

## Detailed Description

### template<typename number> class SparseLUDecomposition< number >::AdditionalData

Parameters for SparseDecomposition.

Definition at line 140 of file sparse_decomposition.h.

## Constructor & Destructor Documentation

template<typename number>
 SparseLUDecomposition< number >::AdditionalData::AdditionalData ( const double strengthen_diagonal = 0, const unsigned int extra_off_diagonals = 0, const bool use_previous_sparsity = false, const SparsityPattern * use_this_sparsity = nullptr )

Constructor. For the parameters' description, see below.

## ◆ strengthen_diagonal

template<typename number>

strengthen_diag times the sum of absolute row entries is added to the diagonal entries.

Per default, this value is zero, i.e. the diagonal is not strengthened.

Definition at line 157 of file sparse_decomposition.h.

## ◆ extra_off_diagonals

template<typename number>

By default, the initialize(matrix, data) function creates its own sparsity. This sparsity has the same SparsityPattern as matrix with some extra off diagonals the number of which is specified by extra_off_diagonals.

The user can give a SparsityPattern to use_this_sparsity. Then this sparsity is used and the extra_off_diagonals argument is ignored.

Definition at line 169 of file sparse_decomposition.h.

## ◆ use_previous_sparsity

template<typename number>

If this flag is true the initialize() function uses the same sparsity that was used during the previous initialize() call.

This might be useful when several linear problems on the same sparsity need to solved, as for example several Newton iteration steps on the same triangulation.

Definition at line 179 of file sparse_decomposition.h.

## ◆ use_this_sparsity

template<typename number>
When a SparsityPattern is given to this argument, the initialize() function calls reinit(*use_this_sparsity) causing this sparsity to be used.
Note that the sparsity structures of *use_this_sparsity and the matrix passed to the initialize function need not be equal. Fill-in is allowed, as well as filtering out some elements in the matrix.