17 #ifndef __deal2__transpose_matrix_h
18 #define __deal2__transpose_matrix_h
21 #include <deal.II/base/subscriptor.h>
22 #include <deal.II/lac/pointer_matrix.h>
24 DEAL_II_NAMESPACE_OPEN
41 template<
class MATRIX,
class VECTOR>
97 virtual void vmult (VECTOR &dst,
98 const VECTOR &src)
const;
103 virtual void Tvmult (VECTOR &dst,
104 const VECTOR &src)
const;
110 virtual void vmult_add (VECTOR &dst,
111 const VECTOR &src)
const;
117 virtual void Tvmult_add (VECTOR &dst,
118 const VECTOR &src)
const;
125 virtual const void *
get()
const;
137 template<
class MATRIX,
class VECTOR>
143 template<
class MATRIX,
class VECTOR>
149 template<
class MATRIX,
class VECTOR>
157 template<
class MATRIX,
class VECTOR>
165 template<
class MATRIX,
class VECTOR>
174 template<
class MATRIX,
class VECTOR>
183 template<
class MATRIX,
class VECTOR>
186 const VECTOR &src)
const
189 m->Tvmult (dst, src);
193 template<
class MATRIX,
class VECTOR>
196 const VECTOR &src)
const
203 template<
class MATRIX,
class VECTOR>
206 const VECTOR &src)
const
209 m->Tvmult_add (dst, src);
213 template<
class MATRIX,
class VECTOR>
216 const VECTOR &src)
const
219 m->vmult_add (dst, src);
223 template<
class MATRIX,
class VECTOR>
232 DEAL_II_NAMESPACE_CLOSE
virtual void vmult(VECTOR &dst, const VECTOR &src) const
TransposeMatrix(const MATRIX *M=0)
#define Assert(cond, exc)
virtual void Tvmult_add(VECTOR &dst, const VECTOR &src) const
virtual const void * get() const
SmartPointer< const MATRIX, TransposeMatrix< MATRIX, VECTOR > > m
virtual void vmult_add(VECTOR &dst, const VECTOR &src) const
::ExceptionBase & ExcNotInitialized()
const TransposeMatrix & operator=(const MATRIX *M)
virtual void Tvmult(VECTOR &dst, const VECTOR &src) const