SparseLUDecomposition< number >::AdditionalData Class Reference

List of all members.

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=0)

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.

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 = 0 
)

Constructor. For the parameters' description, see below.


Member Data Documentation

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.

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.

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.

template<typename number>
const SparsityPattern* SparseLUDecomposition< number >::AdditionalData::use_this_sparsity

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, but that the pattern used by this matrix needs to contain all elements used by the matrix to be decomposed. Fill-in is thus allowed.


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

deal.II documentation generated on Sat Aug 15 16:52:21 2009 by doxygen 1.5.9