It is only ever written to, never read.
*/
virtual number get_strengthen_diagonal(const number rowsum, const size_type row) const;
- /**
- * State flag. If not in decomposed state, it is illegal to apply the
- * decomposition. This flag is cleared when the underlaying SparseMatrix
- * SparsityPattern is changed, and set by decompose().
- */
- bool decomposed;
-
/**
* The default strengthening value, returned by get_strengthen_diagonal().
*/
SparseLUDecomposition<number>::SparseLUDecomposition()
:
SparseMatrix<number>(),
- decomposed(false),
own_sparsity(0)
{}
template<typename number>
void SparseLUDecomposition<number>::clear()
{
- decomposed = false;
-
std::vector<const size_type *> tmp;
tmp.swap (prebuilt_lower_bound);
// now use this sparsity pattern
Assert (sparsity_pattern_to_use->n_rows()==sparsity_pattern_to_use->n_cols(),
typename SparsityPattern::ExcDiagonalNotOptimized());
- decomposed = false;
{
std::vector<const size_type *> tmp;
tmp.swap (prebuilt_lower_bound);
Assert (data.strengthen_diagonal>=0,
ExcInvalidStrengthening (data.strengthen_diagonal));
- this->decomposed = false;
this->strengthen_diagonal = data.strengthen_diagonal;
this->prebuild_lower_bound ();
this->copy_from (matrix);
- this->decomposed = true;
if (data.strengthen_diagonal>0)
this->strengthen_diagonal_impl();
SparseLUDecomposition<number>::initialize(matrix, data);
- this->decomposed = false;
this->strengthen_diagonal = data.strengthen_diagonal;
this->prebuild_lower_bound ();
this->copy_from (matrix);
- this->decomposed = true;
if (data.strengthen_diagonal > 0)
this->strengthen_diagonal_impl ();