From 66034f9f12bec0cec08ab0a4c0b674490e5f620a Mon Sep 17 00:00:00 2001 From: Jonathan Youett <youett@math.fu-berlin.de> Date: Mon, 30 Jun 2014 12:31:53 +0200 Subject: [PATCH] OperatorType -> MatrixType DiscFuncType -> VectorType --- .../truncateddensemgtransfer.cc | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/dune/solvers/transferoperators/truncateddensemgtransfer.cc b/dune/solvers/transferoperators/truncateddensemgtransfer.cc index 9ee73266..ba6b8a86 100644 --- a/dune/solvers/transferoperators/truncateddensemgtransfer.cc +++ b/dune/solvers/transferoperators/truncateddensemgtransfer.cc @@ -1,7 +1,7 @@ -template<class DiscFuncType, class BitVectorType, class OperatorType> -void TruncatedDenseMGTransfer<DiscFuncType, BitVectorType, OperatorType>::prolong(const DiscFuncType& f, DiscFuncType& t) const +template<class VectorType, class BitVectorType, class MatrixType> +void TruncatedDenseMGTransfer<VectorType, BitVectorType, MatrixType>::prolong(const VectorType& f, VectorType& t) const { // If the critical bitfield is not set, call the base class method if (this->critical_ == nullptr) { @@ -21,10 +21,10 @@ void TruncatedDenseMGTransfer<DiscFuncType, BitVectorType, OperatorType>::prolon t.resize(this->matrix_.N()); - typedef typename DiscFuncType::Iterator Iterator; - typedef typename DiscFuncType::ConstIterator ConstIterator; + typedef typename VectorType::Iterator Iterator; + typedef typename VectorType::ConstIterator ConstIterator; - typedef typename OperatorType::row_type RowType; + typedef typename MatrixType::row_type RowType; typedef typename RowType::ConstIterator ColumnIterator; Iterator tIt = t.begin(); @@ -60,8 +60,8 @@ void TruncatedDenseMGTransfer<DiscFuncType, BitVectorType, OperatorType>::prolon } -template<class DiscFuncType, class BitVectorType, class OperatorType> -void TruncatedDenseMGTransfer<DiscFuncType, BitVectorType, OperatorType>::restrict(const DiscFuncType& f, DiscFuncType& t) const +template<class VectorType, class BitVectorType, class MatrixType> +void TruncatedDenseMGTransfer<VectorType, BitVectorType, MatrixType>::restrict(const VectorType& f, VectorType& t) const { // If the critical bitfield is not set, call the base class method @@ -84,10 +84,10 @@ void TruncatedDenseMGTransfer<DiscFuncType, BitVectorType, OperatorType>::restri t.resize(this->matrix_.M()); t = 0; - typedef typename DiscFuncType::Iterator Iterator; - typedef typename DiscFuncType::ConstIterator ConstIterator; + typedef typename VectorType::Iterator Iterator; + typedef typename VectorType::ConstIterator ConstIterator; - typedef typename OperatorType::row_type RowType; + typedef typename MatrixType::row_type RowType; typedef typename RowType::ConstIterator ColumnIterator; Iterator tIt = t.begin(); @@ -104,7 +104,7 @@ void TruncatedDenseMGTransfer<DiscFuncType, BitVectorType, OperatorType>::restri // The following lines are a matrix-vector loop, but rows belonging // to critical dofs are left out - typename DiscFuncType::block_type& tEntry = t[cIt.index()]; + typename VectorType::block_type& tEntry = t[cIt.index()]; for (int i=0; i<blocksize; i++) { for (int j=0; j<blocksize; j++) { @@ -123,9 +123,9 @@ void TruncatedDenseMGTransfer<DiscFuncType, BitVectorType, OperatorType>::restri } -template<class DiscFuncType, class BitVectorType, class OperatorType> -void TruncatedDenseMGTransfer<DiscFuncType, BitVectorType, OperatorType>:: -galerkinRestrict(const OperatorType& fineMat, OperatorType& coarseMat) const +template<class VectorType, class BitVectorType, class MatrixType> +void TruncatedDenseMGTransfer<VectorType, BitVectorType, MatrixType>:: +galerkinRestrict(const MatrixType& fineMat, MatrixType& coarseMat) const { // If the critical bitfield is not set, call the base class method @@ -141,7 +141,7 @@ galerkinRestrict(const OperatorType& fineMat, OperatorType& coarseMat) const // //////////////////////// // Nonsymmetric case // //////////////////////// - typedef typename OperatorType::row_type RowType; + typedef typename MatrixType::row_type RowType; typedef typename RowType::Iterator ColumnIterator; typedef typename RowType::ConstIterator ConstColumnIterator; @@ -199,7 +199,7 @@ galerkinRestrict(const OperatorType& fineMat, OperatorType& coarseMat) const if (this->recompute_ && !((*this->recompute_)[iv][0]) && !((*this->recompute_)[jv][0])) continue; - typename OperatorType::block_type& cm = coarseMat[iv][jv]; + typename MatrixType::block_type& cm = coarseMat[iv][jv]; // Compute im * m * jm, but omitting the critical entries for (int i=0; i<blocksize; i++) { -- GitLab