From 25bceb0f515e2527d2f91aa84d2ca7b6054d4fd1 Mon Sep 17 00:00:00 2001 From: young Date: Wed, 22 Aug 2012 10:09:55 +0000 Subject: [PATCH] Duplicate code once, not twice. PETScWrappers::SparseMatrix::MPI::*norm* is just a specialisation. git-svn-id: https://svn.dealii.org/trunk@26070 0785d39b-7218-0410-832d-ea1e28bc413d --- .../include/deal.II/lac/petsc_sparse_matrix.h | 43 ------------------- deal.II/source/lac/petsc_sparse_matrix.cc | 17 -------- 2 files changed, 60 deletions(-) diff --git a/deal.II/include/deal.II/lac/petsc_sparse_matrix.h b/deal.II/include/deal.II/lac/petsc_sparse_matrix.h index aebee7087b..5735433278 100644 --- a/deal.II/include/deal.II/lac/petsc_sparse_matrix.h +++ b/deal.II/include/deal.II/lac/petsc_sparse_matrix.h @@ -276,49 +276,6 @@ namespace PETScWrappers */ virtual const MPI_Comm & get_mpi_communicator () const; - /** - * Return the square of the norm - * of the vector $v$ with respect - * to the norm induced by this - * matrix, - * i.e. $\left(v,Mv\right)$. This - * is useful, e.g. in the finite - * element context, where the - * $L_2$ norm of a function - * equals the matrix norm with - * respect to the mass matrix of - * the vector representing the - * nodal values of the finite - * element function. - * - * Obviously, the matrix needs to - * be quadratic for this operation. - * - * The implementation of this function - * is not as efficient as the one in - * the @p MatrixBase class used in - * deal.II (i.e. the original one, not - * the PETSc wrapper class) since PETSc - * doesn't support this operation and - * needs a temporary vector. - */ - PetscScalar matrix_norm_square (const VectorBase &v) const; - - /** - * Compute the matrix scalar - * product $\left(u,Mv\right)$. - * - * The implementation of this function - * is not as efficient as the one in - * the @p MatrixBase class used in - * deal.II (i.e. the original one, not - * the PETSc wrapper class) since PETSc - * doesn't support this operation and - * needs a temporary vector. - */ - PetscScalar matrix_scalar_product (const VectorBase &u, - const VectorBase &v) const; - private: /** diff --git a/deal.II/source/lac/petsc_sparse_matrix.cc b/deal.II/source/lac/petsc_sparse_matrix.cc index c694436497..f6a3fe5242 100644 --- a/deal.II/source/lac/petsc_sparse_matrix.cc +++ b/deal.II/source/lac/petsc_sparse_matrix.cc @@ -352,23 +352,6 @@ namespace PETScWrappers template void SparseMatrix::do_reinit (const CompressedSimpleSparsityPattern &, const bool); - - PetscScalar - SparseMatrix::matrix_norm_square (const VectorBase &v) const - { - Vector tmp (v.size()); - vmult (tmp, v); - return tmp*v; - } - - PetscScalar - SparseMatrix::matrix_scalar_product (const VectorBase &u, - const VectorBase &v) const - { - Vector tmp (v.size()); - vmult (tmp, v); - return u*tmp; - } } -- 2.39.5