|
| DSMatrix () |
| Default constructor.
|
|
| DSMatrix (size_t dim) |
| Constructor that for a symmetric matrix with given number of r‡qows. More...
|
|
| DSMatrix (const DSMatrix< T_ > &m) |
| Copy Constructor. More...
|
|
| DSMatrix (Mesh &mesh, size_t dof=0, int is_diagonal=false) |
| Constructor using mesh to initialize matrix. More...
|
|
| ~DSMatrix () |
| Destructor.
|
|
void | setDiag () |
| Store diagonal entries in a separate internal vector.
|
|
void | setSize (size_t dim) |
| Set size (number of rows) of matrix. More...
|
|
void | set (size_t i, size_t j, const T_ &val) |
| Assign constant to entry (i,j) of the matrix. More...
|
|
void | getColumn (size_t j, Vect< T_ > &v) const |
| Get j -th column vector. More...
|
|
Vect< T_ > | getColumn (size_t j) const |
| Get j -th column vector. More...
|
|
void | getRow (size_t i, Vect< T_ > &v) const |
| Get i -th row vector. More...
|
|
Vect< T_ > | getRow (size_t i) const |
| Get i -th row vector. More...
|
|
void | setRow (size_t i, const Vect< T_ > &v) |
| Copy a given vector to a prescribed row in the matrix. More...
|
|
void | setColumn (size_t j, const Vect< T_ > &v) |
| Copy a given vector to a prescribed column in the matrix. More...
|
|
void | setDiag (const T_ &a) |
| Set matrix as diagonal and assign its diagonal entries as a constant. More...
|
|
void | setDiag (const vector< T_ > &d) |
| Set matrix as diagonal and assign its diagonal entries. More...
|
|
void | add (size_t i, size_t j, const T_ &val) |
| Add constant to an entry ofthe matrix. More...
|
|
T_ | at (size_t i, size_t j) |
| Return a value of a matrix entry. More...
|
|
T_ | operator() (size_t i, size_t j) const |
| Operator () (Constant version). More...
|
|
T_ & | operator() (size_t i, size_t j) |
| Operator () (Non constant version). More...
|
|
DSMatrix< T_ > & | operator= (const DSMatrix< T_ > &m) |
| Operator = Copy matrix m to current matrix instance.
|
|
DSMatrix< T_ > & | operator= (const T_ &x) |
| Operator = Assign matrix to identity times x .
|
|
DSMatrix & | operator+= (const T_ &x) |
| Operator +=. More...
|
|
DSMatrix & | operator-= (const T_ &x) |
| Operator -=. More...
|
|
int | setLDLt () |
| Factorize matrix (LDLT ) More...
|
|
void | MultAdd (const Vect< T_ > &x, Vect< T_ > &y) const |
| Multiply matrix by vector a*x and add result to y .
|
|
void | MultAdd (T_ a, const Vect< T_ > &x, Vect< T_ > &y) const |
| Multiply matrix by vector a*x and add to y . More...
|
|
void | Mult (const Vect< T_ > &x, Vect< T_ > &y) const |
| Multiply matrix by vector x and save result in y .
|
|
void | TMult (const Vect< T_ > &x, Vect< T_ > &y) const |
| Multiply transpose of matrix by vector x and add result in y . More...
|
|
void | Axpy (T_ a, const DSMatrix< T_ > &m) |
| Add to matrix the product of a matrix by a scalar. More...
|
|
void | add (size_t i, const T_ &val) |
| Add val to entry i .
|
|
void | Axpy (T_ a, const Matrix< T_ > *m) |
| Add to matrix the product of a matrix by a scalar. More...
|
|
int | solve (Vect< T_ > &b, bool fact=true) |
| Solve linear system. More...
|
|
int | solve (const Vect< T_ > &b, Vect< T_ > &x, bool fact=true) |
| Solve linear system. More...
|
|
const T_ * | getArray () |
| Return matrix as C-Array. Matrix is stored row by row. Only lower triangle is stored.
|
|
T_ | get (size_t i, size_t j) const |
| Return entry (i,j) of matrix.
|
|
| Matrix () |
| Default constructor. More...
|
|
| Matrix (const Matrix< T_ > &m) |
| Copy Constructor.
|
|
virtual | ~Matrix () |
| Destructor.
|
|
virtual void | reset () |
| Set matrix to 0 and reset factorization parameter. More...
|
|
size_t | getNbRows () const |
| Return number of rows.
|
|
size_t | getNbColumns () const |
| Return number of columns.
|
|
string | getName () const |
| Return name of matrix.
|
|
MatrixSize | getMatrixSize () const |
| Return storage type.
|
|
void | setPenal (real_t p) |
| Set Penalty Parameter (For boundary condition prescription).
|
|
void | setDiagonal () |
| Set the matrix as diagonal.
|
|
T_ | getDiag (size_t k) const |
| Return k -th diagonal entry of matrix. More...
|
|
size_t | size () const |
| Return matrix dimension (Number of rows and columns).
|
|
void | setDiagonal (Mesh &mesh) |
| Initialize matrix storage in the case where only diagonal terms are stored. More...
|
|
virtual void | clear () |
| brief Set all matrix entries to zero
|
|
void | Assembly (const Element &el, T_ *a) |
| Assembly of element matrix into global matrix. More...
|
|
void | Assembly (const Side &sd, T_ *a) |
| Assembly of side matrix into global matrix. More...
|
|
void | Prescribe (Vect< T_ > &b, const Vect< T_ > &u, int flag=0) |
| Impose by a penalty method an essential boundary condition, using the Mesh instance provided by the constructor. More...
|
|
void | Prescribe (int dof, int code, Vect< T_ > &b, const Vect< T_ > &u, int flag=0) |
| Impose by a penalty method an essential boundary condition to a given degree of freedom for a given code. More...
|
|
void | Prescribe (Vect< T_ > &b, int flag=0) |
| Impose by a penalty method a homegeneous (=0) essential boundary condition. More...
|
|
void | Prescribe (size_t dof, Vect< T_ > &b, const Vect< T_ > &u, int flag=0) |
| Impose by a penalty method an essential boundary condition when only one DOF is treated. More...
|
|
void | PrescribeSide () |
| Impose by a penalty method an essential boundary condition when DOFs are supported by sides. More...
|
|
virtual int | Factor ()=0 |
| Factorize matrix. Available only if the storage class enables it.
|
|
int | FactorAndSolve (Vect< T_ > &b) |
| Factorize matrix and solve the linear system. More...
|
|
int | FactorAndSolve (const Vect< T_ > &b, Vect< T_ > &x) |
| Factorize matrix and solve the linear system. More...
|
|
size_t | getLength () const |
| Return number of stored terms in matrix.
|
|
int | isDiagonal () const |
| Say if matrix is diagonal or not.
|
|
int | isFactorized () const |
| Say if matrix is factorized or not. More...
|
|
virtual size_t | getColInd (size_t i) const |
| Return Column index for column i (See the description for class SpMatrix).
|
|
virtual size_t | getRowPtr (size_t i) const |
| Return Row pointer for row i (See the description for class SpMatrix).
|
|
T_ | operator() (size_t i) const |
| Operator () with one argument (Constant version). More...
|
|
T_ & | operator() (size_t i) |
| Operator () with one argument (Non Constant version). More...
|
|
T_ & | operator[] (size_t k) |
| Operator [] (Non constant version). More...
|
|
T_ | operator[] (size_t k) const |
| Operator [] (Constant version). More...
|
|
Matrix & | operator= (Matrix< T_ > &m) |
| Operator =. More...
|
|
Matrix & | operator+= (const Matrix< T_ > &m) |
| Operator +=. More...
|
|
Matrix & | operator-= (const Matrix< T_ > &m) |
| Operator -=. More...
|
|
Matrix & | operator= (const T_ &x) |
| Operator =. More...
|
|
Matrix & | operator*= (const T_ &x) |
| Operator *=. More...
|
|
Matrix & | operator+= (const T_ &x) |
| Operator +=. More...
|
|
Matrix & | operator-= (const T_ &x) |
| Operator -=. More...
|
|
template<class T_>
class OFELI::DSMatrix< T_ >
To handle symmetric dense matrices.
This class enables storing and manipulating symmetric dense matrices.
- Template Parameters
-
T_ | Data type (double, float, complex<double>, ...) |
- Author
- Rachid Touzani
- Copyright
- GNU Lesser Public License