calculates the determinant of a matrix More...
Go to the source code of this file.
Defines | |
#define | VNL_DETERMINANT_INSTANTIATE(T) extern "you must include vnl/algo/vnl_determinant.txx first" |
Functions | |
template<class T > | |
T | vnl_determinant (T const *row0, T const *row1) |
direct evaluation for 2x2 matrix. | |
template<class T > | |
T | vnl_determinant (T const *row0, T const *row1, T const *row2) |
direct evaluation for 3x3 matrix. | |
template<class T > | |
T | vnl_determinant (T const *row0, T const *row1, T const *row2, T const *row3) |
direct evaluation for 4x4 matrix. | |
int | vnl_determinant (vnl_matrix< int > const &M, bool balance=false) |
template<class T > | |
T | vnl_determinant (vnl_matrix< T > const &M, bool balance=false) |
evaluation using direct methods for sizes of 2x2, 3x3, and 4x4 or qr decomposition for other matrices. | |
template<class T , unsigned m, unsigned n> | |
T | vnl_determinant (vnl_matrix_fixed< T, m, n > const &M, bool balance=false) |
evaluation using direct methods for sizes of 2x2, 3x3, and 4x4 or qr decomposition for other matrices. |
calculates the determinant of a matrix
Evaluation of determinants of any size. For small matrices, will use the direct routines (no netlib) but for larger matrices, a matrix decomposition such as SVD or QR will be used.
Modifications dac (Manchester) 26/03/2001: tidied up documentation Feb.2002 - Peter Vanroose - brief doxygen comment placed on single line Sep.2003 - Peter Vanroose - specialisation for int added
Definition in file vnl_determinant.h.
#define VNL_DETERMINANT_INSTANTIATE | ( | T | ) | extern "you must include vnl/algo/vnl_determinant.txx first" |
Definition at line 60 of file vnl_determinant.h.
T vnl_determinant | ( | T const * | row0, |
T const * | row1 | ||
) |
direct evaluation for 2x2 matrix.
Definition at line 13 of file vnl_determinant.txx.
T vnl_determinant | ( | T const * | row0, |
T const * | row1, | ||
T const * | row2 | ||
) |
direct evaluation for 3x3 matrix.
Definition at line 19 of file vnl_determinant.txx.
T vnl_determinant | ( | T const * | row0, |
T const * | row1, | ||
T const * | row2, | ||
T const * | row3 | ||
) |
direct evaluation for 4x4 matrix.
Definition at line 31 of file vnl_determinant.txx.
int vnl_determinant | ( | vnl_matrix< int > const & | M, |
bool | balance = false |
||
) |
Definition at line 4 of file vnl_determinant.cxx.
T vnl_determinant | ( | vnl_matrix< T > const & | M, |
bool | balance = false |
||
) |
evaluation using direct methods for sizes of 2x2, 3x3, and 4x4 or qr decomposition for other matrices.
Definition at line 63 of file vnl_determinant.txx.
T vnl_determinant | ( | vnl_matrix_fixed< T, m, n > const & | M, |
bool | balance = false |
||
) | [inline] |
evaluation using direct methods for sizes of 2x2, 3x3, and 4x4 or qr decomposition for other matrices.
convenience overload from vnl_matrix<T> variant
Definition at line 54 of file vnl_determinant.h.