|
| int | Height () const |
| | Get the height (size of output) of the Operator. Synonym with NumRows(). More...
|
| |
| int | NumRows () const |
| | Get the number of rows (size of output) of the Operator. Synonym with Height(). More...
|
| |
| int | Width () const |
| | Get the width (size of input) of the Operator. Synonym with NumCols(). More...
|
| |
| int | NumCols () const |
| | Get the number of columns (size of input) of the Operator. Synonym with Width(). More...
|
| |
| | TAutoDiffDenseMatrix () |
| |
| template<typename idtype > |
| | TAutoDiffDenseMatrix (const TAutoDiffDenseMatrix< idtype > &m) |
| | Copy constructor. More...
|
| |
| | TAutoDiffDenseMatrix (const DenseMatrix &m) |
| | Copy constructor using standard DenseMatrix. More...
|
| |
| | TAutoDiffDenseMatrix (int s) |
| | Creates square matrix of size s. More...
|
| |
| | TAutoDiffDenseMatrix (int m, int n) |
| | Creates rectangular matrix of size m x n. More...
|
| |
| | TAutoDiffDenseMatrix (const TAutoDiffDenseMatrix< dtype > &mat, char ch) |
| |
| void | SetSize (int s) |
| | Change the size of the DenseMatrix to s x s. More...
|
| |
| void | SetSize (int h, int w) |
| | Change the size of the DenseMatrix to h x w. More...
|
| |
| dtype * | Data () const |
| | Returns the matrix data array. More...
|
| |
| dtype * | GetData () const |
| | Returns the matrix data array. More...
|
| |
| bool | OwnsData () const |
| |
| dtype & | operator() (int i, int j) |
| | Returns reference to a_{ij}. More...
|
| |
| const dtype & | operator() (int i, int j) const |
| |
| dtype & | Elem (int i, int j) |
| |
| const dtype & | Elem (int i, int j) const |
| |
| void | Mult (const dtype *x, dtype *y) const |
| |
| void | Mult (const TAutoDiffVector< dtype > &x, TAutoDiffVector< dtype > &y) const |
| |
| dtype | operator* (const TAutoDiffDenseMatrix< dtype > &m) const |
| |
| void | MultTranspose (const dtype *x, dtype *y) const |
| |
| void | MultTranspose (const TAutoDiffVector< dtype > &x, TAutoDiffVector< dtype > &y) const |
| |
| void | Randomize (int seed) |
| |
| void | RandomizeDiag (int seed) |
| |
| void | Diag (dtype c, int n) |
| | Creates n x n diagonal matrix with diagonal elements c. More...
|
| |
| template<typename itype > |
| void | Diag (itype *diag, int n) |
| | Creates n x n diagonal matrix with diagonal given by diag. More...
|
| |
| void | Transpose () |
| | (*this) = (*this)^t More...
|
| |
| template<typename itype > |
| void | Transpose (const TAutoDiffDenseMatrix< itype > &A) |
| | (*this) = A^t More...
|
| |
| void | Symmetrize () |
| | (*this) = 1/2 ((*this) + (*this)^t) More...
|
| |
| void | Lump () |
| |
template<typename dtype>
class mfem::TAutoDiffDenseMatrix< dtype >
Templated dense matrix data type.
The main goal of the TAutoDiffDenseMatrix class is to serve as a data container for representing dense matrices in classes, methods, and functions utilized with automatic differentiation (AD). The functionality/interface is copied from the standard MFEM dense matrix mfem::DenseMatrix. The basic idea is to utilize the templated vector class in combination with AD during the development phase. The AD parts can be replaced with optimized code once the initial development of the application is complete. The common interface between TAutoDiffDenseMatrix and DenseMatrix will ease the transition from AD to hand-optimized code as it does not require a change in the interface or the code structure. TAutoDiffDenseMatrix is intended to be utilized for dense serial matrices. The objects can be combined with TAutoDiffVector or standard Vector.
Definition at line 34 of file taddensemat.hpp.