]> https://gitweb.dealii.org/ - dealii.git/commitdiff
C++11 cleanup, p8: Remove BlockDiagonalMatrix 4218/head
authorMatthias Maier <tamiko@43-1.org>
Thu, 6 Apr 2017 21:32:08 +0000 (16:32 -0500)
committerMatthias Maier <tamiko@43-1.org>
Thu, 6 Apr 2017 21:32:08 +0000 (16:32 -0500)
include/deal.II/lac/block_matrix.h [deleted file]

diff --git a/include/deal.II/lac/block_matrix.h b/include/deal.II/lac/block_matrix.h
deleted file mode 100644 (file)
index fac76f8..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-// ---------------------------------------------------------------------
-//
-// Copyright (C) 2000 - 2015 by the deal.II authors
-//
-// This file is part of the deal.II library.
-//
-// The deal.II library is free software; you can use it, redistribute
-// it, and/or modify it under the terms of the GNU Lesser General
-// Public License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-// The full text of the license can be found in the file LICENSE at
-// the top level of the deal.II distribution.
-//
-// ---------------------------------------------------------------------
-
-#ifndef dealii__block_matrix_h
-#define dealii__block_matrix_h
-
-
-#include <deal.II/base/config.h>
-#include <deal.II/base/exceptions.h>
-#include <deal.II/base/smartpointer.h>
-#include <deal.II/lac/block_vector.h>
-
-DEAL_II_NAMESPACE_OPEN
-
-/*! @addtogroup Matrix2
- *@{
- */
-
-/**
- * A matrix with several copies of the same block on the diagonal.
- *
- * This matrix implements an @p m by @p m block matrix. Each diagonal block
- * consists of the same (non-block) matrix, while off-diagonal blocks are
- * void.
- *
- * One special application is a one by one block matrix, allowing to apply the
- * @p vmult of the original matrix (or preconditioner) to a block vector.
- *
- * @deprecated If deal.II was configured with C++11 support, use the
- * LinearOperator class instead, see the module on
- * @ref LAOperators "linear operators"
- * for further details.
- *
- * @see
- * @ref GlossBlockLA "Block (linear algebra)"
- * @author Guido Kanschat, 2000
- */
-template <typename MatrixType>
-class BlockDiagonalMatrix : public Subscriptor
-{
-public:
-  /**
-   * Constructor for an @p n_blocks by @p n_blocks matrix with diagonal blocks
-   * @p M.
-   */
-  BlockDiagonalMatrix (const MatrixType   &M,
-                       const unsigned int  n_blocks);
-
-  /**
-   * Matrix-vector-multiplication.
-   */
-  template <typename number1, typename number2>
-  void vmult (BlockVector<number1> &dst,
-              const BlockVector<number2> &src) const;
-
-  /**
-   * Transposed matrix-vector-multiplication.
-   */
-  template <typename number1, typename number2>
-  void Tvmult (BlockVector<number1> &dst,
-               const BlockVector<number2> &src) const;
-private:
-  /**
-   * Number of blocks.
-   */
-  unsigned int num_blocks;
-
-  /**
-   * Diagonal entry.
-   */
-  SmartPointer<const MatrixType,BlockDiagonalMatrix<MatrixType> > matrix;
-};
-
-/*@}*/
-//---------------------------------------------------------------------------
-
-template <typename MatrixType>
-BlockDiagonalMatrix<MatrixType>::BlockDiagonalMatrix (const MatrixType &M,
-                                                      const unsigned int num_blocks)
-  :
-  num_blocks (num_blocks),
-  matrix(&M)
-{}
-
-
-template <typename MatrixType>
-template <typename number1, typename number2>
-void
-BlockDiagonalMatrix<MatrixType>::vmult (BlockVector<number1>       &dst,
-                                        const BlockVector<number2> &src) const
-{
-  Assert (dst.n_blocks()==num_blocks,
-          ExcDimensionMismatch(dst.n_blocks(),num_blocks));
-  Assert (src.n_blocks()==num_blocks,
-          ExcDimensionMismatch(src.n_blocks(),num_blocks));
-
-  for (unsigned int i=0; i<num_blocks; ++i)
-    matrix->vmult (dst.block(i), src.block(i));
-}
-
-
-template <typename MatrixType>
-template <typename number1, typename number2>
-void
-BlockDiagonalMatrix<MatrixType>::Tvmult (BlockVector<number1>       &dst,
-                                         const BlockVector<number2> &src) const
-{
-  Assert (dst.n_blocks()==num_blocks,
-          ExcDimensionMismatch(dst.n_blocks(),num_blocks));
-  Assert (src.n_blocks()==num_blocks,
-          ExcDimensionMismatch(src.n_blocks(),num_blocks));
-
-  for (unsigned int i=0; i<num_blocks; ++i)
-    matrix->Tvmult (dst.block(i), src.block(i));
-}
-
-
-DEAL_II_NAMESPACE_CLOSE
-
-#endif

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.