a compressed row sparse matrix representation that makes use of itpack to dynamically assemble the matrix More...
#include <itkFEMItpackSparseMatrix.h>
Public Types | |
typedef double | doublereal |
typedef long | integer |
Public Member Functions | |
void | Add (integer i, integer j, doublereal value) |
void | Clear () |
doublereal | Get (integer i, integer j) |
doublereal * | GetA () |
integer * | GetColumnArray () |
integer * | GetIA () |
integer * | GetJA () |
integer | GetMaxNonZeroValues () const |
integer * | GetN () |
integer | GetOrder () const |
integer * | GetRowArray () |
doublereal * | GetValueArray () |
ItpackSparseMatrix (integer order, integer maxNonZeroValues) | |
ItpackSparseMatrix (integer order) | |
ItpackSparseMatrix () | |
void | mult (ItpackSparseMatrix *rightMatrix, ItpackSparseMatrix *resultMatrix) |
void | mult (doublereal *vector, doublereal *result) |
void | PrintCompressedRow () |
void | Set (integer i, integer j, doublereal value) |
void | SetCompressedRow (integer *ia, integer *ja, doublereal *a) |
void | SetMaxNonZeroValues (integer maxNonZeroValues) |
void | SetOrder (integer order) |
~ItpackSparseMatrix () | |
Friends | |
class | LinearSystemWrapperItpack |
a compressed row sparse matrix representation that makes use of itpack to dynamically assemble the matrix
Definition at line 37 of file itkFEMItpackSparseMatrix.h.
typedef double itk::fem::ItpackSparseMatrix::doublereal |
Definition at line 43 of file itkFEMItpackSparseMatrix.h.
typedef long itk::fem::ItpackSparseMatrix::integer |
typedefs from f2c.h
Definition at line 42 of file itkFEMItpackSparseMatrix.h.
itk::fem::ItpackSparseMatrix::ItpackSparseMatrix | ( | ) |
Constructor
itk::fem::ItpackSparseMatrix::ItpackSparseMatrix | ( | integer | order | ) |
Constructor with single parameter
order | the order of the matrix to be created |
Constructor with two parameters
order | the order of the matrix to be created | |
maxNonZeroValues | the maximum number of non-zero values that may appear in the matrix |
itk::fem::ItpackSparseMatrix::~ItpackSparseMatrix | ( | ) |
Destructor
void itk::fem::ItpackSparseMatrix::Add | ( | integer | i, | |
integer | j, | |||
doublereal | value | |||
) |
Add to existing entry of matrix
i | row index | |
j | column index | |
value | value to add to current value at (i,j) |
void itk::fem::ItpackSparseMatrix::Clear | ( | ) |
Clear the memory
doublereal itk::fem::ItpackSparseMatrix::Get | ( | integer | i, | |
integer | j | |||
) |
Get a value from the matrix
i | row index | |
j | column index |
doublereal* itk::fem::ItpackSparseMatrix::GetA | ( | ) |
Get the values of the matrix (via "itpack-like" naming scheme)
Referenced by GetValueArray().
integer* itk::fem::ItpackSparseMatrix::GetColumnArray | ( | ) | [inline] |
Get the column indices
Definition at line 140 of file itkFEMItpackSparseMatrix.h.
References GetJA().
integer* itk::fem::ItpackSparseMatrix::GetIA | ( | ) |
Get the row indices of the matrix (via "itpack-like" naming scheme)
Referenced by GetRowArray().
integer* itk::fem::ItpackSparseMatrix::GetJA | ( | ) |
Get the column indices of the matrix (via "itpack-like" naming scheme)
Referenced by GetColumnArray().
integer itk::fem::ItpackSparseMatrix::GetMaxNonZeroValues | ( | ) | const [inline] |
Get the maximum number of non-zero values allowed in the matrix
Definition at line 155 of file itkFEMItpackSparseMatrix.h.
integer* itk::fem::ItpackSparseMatrix::GetN | ( | ) | [inline] |
Get the order of the matrix (via "itpack-like" naming scheme)
Definition at line 107 of file itkFEMItpackSparseMatrix.h.
integer itk::fem::ItpackSparseMatrix::GetOrder | ( | ) | const [inline] |
Get the order of the matrix
Definition at line 150 of file itkFEMItpackSparseMatrix.h.
integer* itk::fem::ItpackSparseMatrix::GetRowArray | ( | ) | [inline] |
doublereal* itk::fem::ItpackSparseMatrix::GetValueArray | ( | ) | [inline] |
Get the values of the matrix
Definition at line 135 of file itkFEMItpackSparseMatrix.h.
References GetA().
void itk::fem::ItpackSparseMatrix::mult | ( | ItpackSparseMatrix * | rightMatrix, | |
ItpackSparseMatrix * | resultMatrix | |||
) |
Multiply the matrix by another ItpackSparseMatrix
void itk::fem::ItpackSparseMatrix::mult | ( | doublereal * | vector, | |
doublereal * | result | |||
) |
Multiply the matrix by a vector
void itk::fem::ItpackSparseMatrix::PrintCompressedRow | ( | ) |
output compressed row vectors: IA, JA, A
void itk::fem::ItpackSparseMatrix::Set | ( | integer | i, | |
integer | j, | |||
doublereal | value | |||
) |
Insert a value into the matrix
i | row index | |
j | column index | |
value | value to be added at (i,j) |
void itk::fem::ItpackSparseMatrix::SetCompressedRow | ( | integer * | ia, | |
integer * | ja, | |||
doublereal * | a | |||
) |
Pass pointers to compressed row format arrays
ia | row indices | |
ja | column indices | |
a | matrix values |
void itk::fem::ItpackSparseMatrix::SetMaxNonZeroValues | ( | integer | maxNonZeroValues | ) | [inline] |
Set the maximum number of non-zero values that may appear in the matrix
maxNonZeroValues | maximum number of non-zero values that may appear in matrix |
Definition at line 80 of file itkFEMItpackSparseMatrix.h.
void itk::fem::ItpackSparseMatrix::SetOrder | ( | integer | order | ) | [inline] |
Set the order of the matrix
order | the order of the matrix |
Definition at line 73 of file itkFEMItpackSparseMatrix.h.
friend class LinearSystemWrapperItpack [friend] |
friend class
Definition at line 178 of file itkFEMItpackSparseMatrix.h.