Reference documentation for deal.II version 8.5.1
Public Member Functions | Private Attributes | List of all members
ScaledMatrix< VectorType > Class Template Reference

#include <deal.II/lac/matrix_lib.h>

Inheritance diagram for ScaledMatrix< VectorType >:
[legend]

Public Member Functions

 ScaledMatrix ()
 
template<typename MatrixType >
 ScaledMatrix (const MatrixType &M, const double factor)
 
 ~ScaledMatrix ()
 
template<typename MatrixType >
void initialize (const MatrixType &M, const double factor)
 
void clear ()
 
void vmult (VectorType &w, const VectorType &v) const
 
void Tvmult (VectorType &w, const VectorType &v) const
 
- Public Member Functions inherited from Subscriptor
 Subscriptor ()
 
 Subscriptor (const Subscriptor &)
 
 Subscriptor (Subscriptor &&)
 
virtual ~Subscriptor ()
 
Subscriptoroperator= (const Subscriptor &)
 
Subscriptoroperator= (Subscriptor &&)
 
void subscribe (const char *identifier=0) const
 
void unsubscribe (const char *identifier=0) const
 
unsigned int n_subscriptions () const
 
void list_subscribers () const
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Private Attributes

PointerMatrixBase< VectorType > * m
 
double factor
 

Additional Inherited Members

- Static Public Member Functions inherited from Subscriptor
static ::ExceptionBaseExcInUse (int arg1, char *arg2, std::string &arg3)
 
static ::ExceptionBaseExcNoSubscriber (char *arg1, char *arg2)
 

Detailed Description

template<typename VectorType>
class ScaledMatrix< VectorType >

A matrix that is the multiple of another matrix.

Matrix-vector products of this matrix are composed of those of the original matrix with the vector and then scaling of the result by a constant factor.

Deprecated:
If deal.II was configured with C++11 support, use the LinearOperator class instead, see the module on linear operators for further details.
Author
Guido Kanschat, 2007

Definition at line 159 of file matrix_lib.h.

Constructor & Destructor Documentation

◆ ScaledMatrix() [1/2]

template<typename VectorType >
ScaledMatrix< VectorType >::ScaledMatrix ( )
inline

Constructor leaving an uninitialized object.

Definition at line 517 of file matrix_lib.h.

◆ ScaledMatrix() [2/2]

template<typename VectorType >
template<typename MatrixType >
ScaledMatrix< VectorType >::ScaledMatrix ( const MatrixType &  M,
const double  factor 
)
inline

Constructor with initialization.

Definition at line 528 of file matrix_lib.h.

◆ ~ScaledMatrix()

template<typename VectorType >
ScaledMatrix< VectorType >::~ScaledMatrix ( )
inline

Destructor

Definition at line 562 of file matrix_lib.h.

Member Function Documentation

◆ initialize()

template<typename VectorType >
template<typename MatrixType >
void ScaledMatrix< VectorType >::initialize ( const MatrixType &  M,
const double  factor 
)
inline

Initialize for use with a new matrix and factor.

Definition at line 540 of file matrix_lib.h.

◆ clear()

template<typename VectorType >
void ScaledMatrix< VectorType >::clear ( )
inline

Reset the object to its original state.

Definition at line 552 of file matrix_lib.h.

◆ vmult()

template<typename VectorType >
void ScaledMatrix< VectorType >::vmult ( VectorType &  w,
const VectorType &  v 
) const
inline

Matrix-vector product.

Definition at line 571 of file matrix_lib.h.

◆ Tvmult()

template<typename VectorType >
void ScaledMatrix< VectorType >::Tvmult ( VectorType &  w,
const VectorType &  v 
) const
inline

Transposed matrix-vector product.

Definition at line 581 of file matrix_lib.h.

Member Data Documentation

◆ m

template<typename VectorType >
PointerMatrixBase<VectorType>* ScaledMatrix< VectorType >::m
private

The matrix.

Definition at line 206 of file matrix_lib.h.

◆ factor

template<typename VectorType >
double ScaledMatrix< VectorType >::factor
private

The scaling factor;

Definition at line 211 of file matrix_lib.h.


The documentation for this class was generated from the following file: