- The deprecated constructor of SparseILU.
- SparseILU::apply_decomposition.
- The deprecated constructor of SparseMIC.
+ - SparseMIC::decompose.
- The compress() functions without argument in the various vector
classes. You should use the versions with a VectorOperation
argument instead.
void initialize (const SparseMatrix<somenumber> &matrix,
const AdditionalData ¶meters = AdditionalData());
- /**
- * @deprecated This method is deprecated, and left for backward compability.
- * It will be removed in later versions. Use initialize() instead.
- */
- template <typename somenumber>
- void decompose (const SparseMatrix<somenumber> &matrix,
- const double strengthen_diagonal=0.) DEAL_II_DEPRECATED;
-
/**
* Apply the incomplete decomposition, i.e. do one forward-backward step
* $dst=(LU)^{-1}src$.
{
SparseLUDecomposition<number>::initialize(matrix, data);
- decompose(matrix, data.strengthen_diagonal);
-}
-
-
-
-template <typename number>
-void SparseMIC<number>::reinit (const SparsityPattern &sparsity)
-{
- {
- std::vector<number> tmp;
- tmp.swap (diag);
- }
- {
- std::vector<number> tmp;
- tmp.swap (inv_diag);
- }
- {
- std::vector<number> tmp;
- tmp.swap (inner_sums);
- }
-
- SparseMatrix<number>::reinit(sparsity);
- this->decomposed = false;
-}
-
-
-
-template <typename number>
-template <typename somenumber>
-void SparseMIC<number>::decompose (const SparseMatrix<somenumber> &matrix,
- const double strengthen_diagonal)
-{
- SparseLUDecomposition<number>::decompose(matrix, strengthen_diagonal);
+ SparseLUDecomposition<number>::decompose(matrix, data.strengthen_diagonal);
Assert (matrix.m()==matrix.n(), ExcNotQuadratic ());
Assert (this->m()==this->n(), ExcNotQuadratic ());
Assert (matrix.m()==this->m(), ExcDimensionMismatch(matrix.m(), this->m()));
- Assert (strengthen_diagonal>=0, ExcInvalidStrengthening (strengthen_diagonal));
+ Assert (data.strengthen_diagonal>=0, ExcInvalidStrengthening (data.strengthen_diagonal));
- if (strengthen_diagonal > 0)
+ if (data.strengthen_diagonal > 0)
this->strengthen_diagonal_impl ();
// MIC implementation: (S. Margenov lectures)
+template <typename number>
+void SparseMIC<number>::reinit (const SparsityPattern &sparsity)
+{
+ {
+ std::vector<number> tmp;
+ tmp.swap (diag);
+ }
+ {
+ std::vector<number> tmp;
+ tmp.swap (inv_diag);
+ }
+ {
+ std::vector<number> tmp;
+ tmp.swap (inner_sums);
+ }
+
+ SparseMatrix<number>::reinit(sparsity);
+ this->decomposed = false;
+}
+
+
+
template <typename number>
inline number
SparseMIC<number>::get_rowsum (const size_type row) const
// ---------------------------------------------------------------------
//
-// Copyright (C) 2002 - 2014 by the deal.II authors
+// Copyright (C) 2002 - 2015 by the deal.II authors
//
// This file is part of the deal.II library.
//
template class SparseMIC<double>;
template void SparseMIC<double>::initialize<double> (const SparseMatrix<double> &,
const AdditionalData &data);
-template void SparseMIC<double>::decompose<double> (const SparseMatrix<double> &,
- const double);
template void SparseMIC<double>::vmult<double> (Vector<double> &,
const Vector<double> &) const;
template void SparseMIC<double>::initialize<float> (const SparseMatrix<float> &,
const AdditionalData &data);
-template void SparseMIC<double>::decompose<float> (const SparseMatrix<float> &,
- const double);
template void SparseMIC<double>::vmult<float> (Vector<float> &,
const Vector<float> &) const;
template class SparseMIC<float>;
template void SparseMIC<float>::initialize<double> (const SparseMatrix<double> &,
const AdditionalData &data);
-template void SparseMIC<float>::decompose<double> (const SparseMatrix<double> &,
- const double);
template void SparseMIC<float>::vmult<double> (Vector<double> &,
const Vector<double> &) const;
template void SparseMIC<float>::initialize<float> (const SparseMatrix<float> &,
const AdditionalData &data);
-template void SparseMIC<float>::decompose<float> (const SparseMatrix<float> &,
- const double);
template void SparseMIC<float>::vmult<float> (Vector<float> &,
const Vector<float> &) const;