From 25bceb0f515e2527d2f91aa84d2ca7b6054d4fd1 Mon Sep 17 00:00:00 2001
From: young <young@0785d39b-7218-0410-832d-ea1e28bc413d>
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