Reference documentation for deal.II version 9.1.1
|
#include <deal.II/lac/pointer_matrix.h>
Public Member Functions | |
PointerMatrixVector (const Vector< number > *M=0) | |
PointerMatrixVector (const char *name) | |
PointerMatrixVector (const Vector< number > *M, const char *name) | |
virtual void | clear () |
bool | empty () const |
const PointerMatrixVector & | operator= (const Vector< number > *M) |
virtual void | vmult (Vector< number > &dst, const Vector< number > &src) const |
virtual void | Tvmult (Vector< number > &dst, const Vector< number > &src) const |
virtual void | vmult_add (Vector< number > &dst, const Vector< number > &src) const |
virtual void | Tvmult_add (Vector< number > &dst, const Vector< number > &src) const |
Public Member Functions inherited from PointerMatrixBase< Vector< number > > | |
virtual | ~PointerMatrixBase () override=default |
Public Member Functions inherited from Subscriptor | |
Subscriptor () | |
Subscriptor (const Subscriptor &) | |
Subscriptor (Subscriptor &&) noexcept | |
virtual | ~Subscriptor () |
Subscriptor & | operator= (const Subscriptor &) |
Subscriptor & | operator= (Subscriptor &&) noexcept |
void | subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
void | unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
unsigned int | n_subscriptions () const |
template<typename StreamType > | |
void | list_subscribers (StreamType &stream) const |
void | list_subscribers () const |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Private Attributes | |
SmartPointer< const Vector< number >, PointerMatrixVector< number > > | m |
Additional Inherited Members | |
Public Types inherited from PointerMatrixBase< Vector< number > > | |
using | value_type = typename Vector< number > ::value_type |
Static Public Member Functions inherited from Subscriptor | |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
Implement matrix multiplications for a vector using the PointerMatrixBase functionality. Objects of this class can be used in block matrices.
Implements a matrix with image dimension 1 by using the scalar product (vmult()) and scalar multiplication (Tvmult()) functions of the Vector class.
Definition at line 355 of file pointer_matrix.h.
PointerMatrixVector< number >::PointerMatrixVector | ( | const Vector< number > * | M = 0 | ) |
Constructor. The pointer in the argument is stored in this class. As usual, the lifetime of *M
must be longer than the one of the PointerMatrix.
If M
is zero, no matrix is stored.
Definition at line 860 of file pointer_matrix.h.
PointerMatrixVector< number >::PointerMatrixVector | ( | const char * | name | ) |
Constructor.
This class internally stores a pointer to a matrix via a SmartPointer object. The SmartPointer class allows to associate a name with the object pointed to that identifies the object that has the pointer, in order to identify objects that still refer to the object pointed to. The name
argument to this function is used to this end, i.e., you can in essence assign a name to the current PointerMatrix object.
Definition at line 866 of file pointer_matrix.h.
PointerMatrixVector< number >::PointerMatrixVector | ( | const Vector< number > * | M, |
const char * | name | ||
) |
Constructor. M
points to a matrix which must live longer than the PointerMatrix.
This class internally stores a pointer to a matrix via a SmartPointer object. The SmartPointer class allows to associate a name with the object pointed to that identifies the object that has the pointer, in order to identify objects that still refer to the object pointed to. The name
argument to this function is used to this end, i.e., you can in essence assign a name to the current PointerMatrix object.
Definition at line 872 of file pointer_matrix.h.
|
inlinevirtual |
Reset the object to its original state.
Implements PointerMatrixBase< Vector< number > >.
Definition at line 880 of file pointer_matrix.h.
|
inline |
Return whether the object is empty.
Definition at line 897 of file pointer_matrix.h.
|
inline |
Assign a new matrix pointer. Deletes the old pointer and releases its matrix.
Definition at line 888 of file pointer_matrix.h.
|
inlinevirtual |
Matrix-vector product, actually the scalar product of src
and the vector representing this matrix.
The dimension of dst
is 1, while that of src
is the size of the vector representing this matrix.
Implements PointerMatrixBase< Vector< number > >.
Definition at line 906 of file pointer_matrix.h.
|
inlinevirtual |
Transposed matrix-vector product, actually the multiplication of the vector representing this matrix with src(0)
.
The dimension of src
is 1, while that of dst
is the size of the vector representing this matrix.
Implements PointerMatrixBase< Vector< number > >.
Definition at line 918 of file pointer_matrix.h.
|
inlinevirtual |
Matrix-vector product, adding to dst
.
The dimension of dst
is 1, while that of src
is the size of the vector representing this matrix.
Implements PointerMatrixBase< Vector< number > >.
Definition at line 930 of file pointer_matrix.h.
|
inlinevirtual |
Transposed matrix-vector product, adding to dst
.
The dimension of src
is 1, while that of dst
is the size of the vector representing this matrix.
Implements PointerMatrixBase< Vector< number > >.
Definition at line 942 of file pointer_matrix.h.
|
private |
The pointer to the actual matrix.
Definition at line 453 of file pointer_matrix.h.