16 #ifndef dealii__transpose_matrix_h 17 #define dealii__transpose_matrix_h 20 #include <deal.II/base/subscriptor.h> 21 #include <deal.II/lac/pointer_matrix.h> 23 DEAL_II_NAMESPACE_OPEN
43 template<
typename MatrixType,
typename VectorType>
89 virtual void vmult (VectorType &dst,
90 const VectorType &src)
const;
95 virtual void Tvmult (VectorType &dst,
96 const VectorType &src)
const;
101 virtual void vmult_add (VectorType &dst,
102 const VectorType &src)
const;
107 virtual void Tvmult_add (VectorType &dst,
108 const VectorType &src)
const;
121 template<
typename MatrixType,
typename VectorType>
127 template<
typename MatrixType,
typename VectorType>
133 template<
typename MatrixType,
typename VectorType>
140 template<
typename MatrixType,
typename VectorType>
148 template<
typename MatrixType,
typename VectorType>
157 template<
typename MatrixType,
typename VectorType>
166 template<
typename MatrixType,
typename VectorType>
169 const VectorType &src)
const 172 m->Tvmult (dst, src);
176 template<
typename MatrixType,
typename VectorType>
179 const VectorType &src)
const 186 template<
typename MatrixType,
typename VectorType>
189 const VectorType &src)
const 192 m->Tvmult_add (dst, src);
196 template<
typename MatrixType,
typename VectorType>
199 const VectorType &src)
const 202 m->vmult_add (dst, src);
206 DEAL_II_NAMESPACE_CLOSE
SmartPointer< const MatrixType, TransposeMatrix< MatrixType, VectorType > > m
static ::ExceptionBase & ExcNotInitialized()
virtual void vmult_add(VectorType &dst, const VectorType &src) const
virtual void Tvmult_add(VectorType &dst, const VectorType &src) const
#define Assert(cond, exc)
const TransposeMatrix & operator=(const MatrixType *M)
virtual void vmult(VectorType &dst, const VectorType &src) const
virtual void Tvmult(VectorType &dst, const VectorType &src) const
TransposeMatrix(const MatrixType *M=0)