Isis Developer Reference
|
#include <Matrix.h>
Public Member Functions | |
Matrix (const int n, const int m, const double value=0.0) | |
Constructs an n x m Matrix containing the specified default value. More... | |
Matrix (TNT::Array2D< double > matrix) | |
Constructs a Matrix from the specified TNT Array2D. More... | |
~Matrix () | |
Destroys the Matrix object. More... | |
int | Rows () |
int | Columns () |
double | Determinant () |
Compute the determinant of the matrix. More... | |
double | Trace () |
Compute the determinant of the matrix. More... | |
std::vector< double > | Eigenvalues () |
Compute the eigenvalues of the matrix. More... | |
Matrix | Add (Matrix &matrix) |
Add the two matrices. More... | |
Matrix | Subtract (Matrix &matrix) |
Subtract the input matrix from this matrix. More... | |
Matrix | Multiply (Matrix &matrix) |
Multiply the two matrices. More... | |
Matrix | Multiply (double scalar) |
Multiply the matrix by a scalar value. More... | |
Matrix | MultiplyElementWise (Matrix &matrix) |
Multiply the two matrices element-wise (ie compute C such that C[i][j] = A[i][j]*B[i][j]) More... | |
Matrix | Transpose () |
Compute the transpose of the matrix. More... | |
Matrix | Inverse () |
Compute the inverse of the matrix. More... | |
Matrix | Eigenvectors () |
Compute the eigenvectors of the matrix and return them as columns of a matrix in ascending order. More... | |
double * | operator[] (int index) |
Matrix | operator+ (Matrix &matrix) |
Matrix | operator- (Matrix &matrix) |
Matrix | operator* (Matrix &matrix) |
Matrix | operator* (double scalar) |
Static Public Member Functions | |
static Matrix | Identity (const int n) |
Create an n x n identity matrix. More... | |
Matrix class.
A Matrix
This class stores a matrix and compute matrix calculations such as addition, subtraction,multiplication, transposes, inverses, and eigenvalues.
Isis::Matrix::Matrix | ( | const int | n, |
const int | m, | ||
const double | value = 0.0 |
||
) |
Constructs an n x m Matrix containing the specified default value.
References _FILEINFO_, and Isis::IException::Programmer.
Referenced by Add(), Eigenvectors(), Inverse(), Multiply(), MultiplyElementWise(), Subtract(), and Transpose().
Isis::Matrix::Matrix | ( | TNT::Array2D< double > | matrix | ) |
Constructs a Matrix from the specified TNT Array2D.
Isis::Matrix::~Matrix | ( | ) |
Destroys the Matrix object.
Add the two matrices.
References _FILEINFO_, Columns(), Matrix(), Isis::IException::Programmer, and Rows().
Referenced by operator+().
|
inline |
Referenced by Add(), Determinant(), Eigenvalues(), Eigenvectors(), Inverse(), Multiply(), MultiplyElementWise(), Isis::operator<<(), Subtract(), and Trace().
double Isis::Matrix::Determinant | ( | ) |
Compute the determinant of the matrix.
References _FILEINFO_, Columns(), Isis::IException::Programmer, and Rows().
std::vector< double > Isis::Matrix::Eigenvalues | ( | ) |
Compute the eigenvalues of the matrix.
References _FILEINFO_, Columns(), Isis::E, Isis::IException::Programmer, and Rows().
Matrix Isis::Matrix::Eigenvectors | ( | ) |
Compute the eigenvectors of the matrix and return them as columns of a matrix in ascending order.
References _FILEINFO_, Columns(), Isis::E, Matrix(), Isis::IException::Programmer, and Rows().
|
static |
Create an n x n identity matrix.
References _FILEINFO_, Isis::IException::Programmer, and Rows().
Matrix Isis::Matrix::Inverse | ( | ) |
Compute the inverse of the matrix.
References _FILEINFO_, Columns(), Matrix(), Isis::IException::Programmer, and Rows().
Matrix Isis::Matrix::Multiply | ( | double | scalar | ) |
Multiply the two matrices.
References _FILEINFO_, Columns(), Matrix(), Isis::IException::Programmer, and Rows().
Referenced by operator*().
Multiply the two matrices element-wise (ie compute C such that C[i][j] = A[i][j]*B[i][j])
References _FILEINFO_, Columns(), Matrix(), Isis::IException::Programmer, and Rows().
|
inline |
References Multiply().
References Multiply().
References Subtract().
|
inline |
|
inline |
Referenced by Add(), Determinant(), Eigenvalues(), Eigenvectors(), Identity(), Inverse(), Multiply(), MultiplyElementWise(), Isis::operator<<(), Subtract(), and Trace().
Subtract the input matrix from this matrix.
References _FILEINFO_, Columns(), Matrix(), Isis::IException::Programmer, and Rows().
Referenced by operator-().
double Isis::Matrix::Trace | ( | ) |
Compute the determinant of the matrix.
References _FILEINFO_, Columns(), Isis::IException::Programmer, and Rows().