From a7dcb296b7d81672f1baacbe9700ac567750962b Mon Sep 17 00:00:00 2001 From: bangerth Date: Thu, 17 Jan 2013 04:03:49 +0000 Subject: [PATCH] Resolve previous use of a deprecated function. The code is still pretty crufty but should at least work for now without producing a warning. git-svn-id: https://svn.dealii.org/trunk@28095 0785d39b-7218-0410-832d-ea1e28bc413d --- .../deal.II/lac/constraint_matrix.templates.h | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/deal.II/include/deal.II/lac/constraint_matrix.templates.h b/deal.II/include/deal.II/lac/constraint_matrix.templates.h index aea9d0c6c0..9d4207339b 100644 --- a/deal.II/include/deal.II/lac/constraint_matrix.templates.h +++ b/deal.II/include/deal.II/lac/constraint_matrix.templates.h @@ -1727,7 +1727,7 @@ namespace internals // the row of a SparseMatrix. namespace dealiiSparseMatrix { - template + template static inline void add_value (const double value, const unsigned int row, @@ -1735,22 +1735,22 @@ namespace internals const unsigned int *col_ptr, const bool are_on_diagonal, unsigned int &counter, - number *val_ptr) + SparseMatrixIterator val_ptr) { if (value != 0.) { Assert (col_ptr != 0, - typename SparseMatrix::ExcInvalidIndex (row, column)); + typename SparseMatrix::ExcInvalidIndex (row, column)); if (are_on_diagonal) { - val_ptr[0] += value; + val_ptr->value() += value; return; } while (col_ptr[counter] < column) ++counter; Assert (col_ptr[counter] == column, - typename SparseMatrix::ExcInvalidIndex(row, column)); - val_ptr[counter] += static_cast(value); + typename SparseMatrix::ExcInvalidIndex(row, column)); + (val_ptr+counter)->value() += value; } } } @@ -1788,8 +1788,10 @@ namespace internals const unsigned int *col_ptr = sparsity.row_length(row) == 0 ? 0 : &sparsity_struct[row_start[row]]; - number *val_ptr = sparsity.row_length(row) == 0 ? 0 : - &sparse_matrix->global_entry (row_start[row]); + typename SparseMatrix::iterator + val_ptr = (sparsity.row_length(row) == 0 ? + sparse_matrix->end() : + sparse_matrix->begin(row)); const bool optimize_diagonal = sparsity.optimize_diagonal(); unsigned int counter = optimize_diagonal; @@ -1843,7 +1845,7 @@ namespace internals global_rows.global_row(j), col_ptr, false, counter, val_ptr); } - val_ptr[0] += matrix_ptr[loc_row]; + val_ptr->value() += matrix_ptr[loc_row]; for (unsigned int j=i+1; jvalue() += resolve_matrix_entry (global_rows, global_rows, i, i, loc_row, + local_matrix); for (unsigned int j=i+1; j