From 41a9203febfdc44db5e4d41c99e6c1c17979a7c8 Mon Sep 17 00:00:00 2001 From: Guido Kanschat Date: Wed, 31 May 2000 04:42:59 +0000 Subject: [PATCH] bug removed git-svn-id: https://svn.dealii.org/trunk@2981 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/lac/include/lac/sparse_matrix.h | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/deal.II/lac/include/lac/sparse_matrix.h b/deal.II/lac/include/lac/sparse_matrix.h index 88faaad694..035d296032 100644 --- a/deal.II/lac/include/lac/sparse_matrix.h +++ b/deal.II/lac/include/lac/sparse_matrix.h @@ -822,7 +822,8 @@ void SparseMatrix::set (const unsigned int i, template inline void SparseMatrix::add (const unsigned int i, const unsigned int j, - const number value) { + const number value) +{ Assert (cols != 0, ExcMatrixNotInitialized()); const unsigned int index = cols->operator()(i,j); @@ -842,9 +843,11 @@ number SparseMatrix::operator () (const unsigned int i, const unsigned int j) const { Assert (cols != 0, ExcMatrixNotInitialized()); - Assert (cols->operator()(i,j) != SparsityPattern::invalid_entry, - ExcInvalidIndex(i,j)); - return val[cols->operator()(i,j)]; + + const unsigned int index = cols->operator()(i,j); + if (index == SparsityPattern::invalid_entry) + return 0.; + return val[index]; }; -- 2.39.5