vnl_adjugate.h
Go to the documentation of this file.
1 // This is core/vnl/algo/vnl_adjugate.h
2 #ifndef vnl_adjugate_h_
3 #define vnl_adjugate_h_
4 //:
5 // \file
6 // \author fsm and Peter Vanroose
7 // The adjoint matrix of a square matrix, sometimes also called the adjugate
8 // matrix (although that name is also used for the transpose of the complex
9 // conjugate), is defined as the matrix whose (i,k)-th entry is the cofactor
10 // of the (k,i)-th entry of the given matrix. The cofactor of entry (k,i)
11 // is the determinant of the matrix obtained by deleting row k and column i
12 // from the given matrix.
13 //
14 // The adjugate matrix is useful in finding the inverse of a square matrix
15 // since det(A) * A_inverse = A_adj.
16 //
17 // In contrast to the inverse matrix, however, calculating the adjoint matrix
18 // does not involve divisions, so the adjoint of an integer matrix is integer.
19 
20 #include <vnl/algo/vnl_algo_export.h>
21 
22 template <class T> class vnl_matrix;
23 
24 template <class T>
25 void vnl_adjugate(vnl_matrix<T> const &A, vnl_matrix<T> *out);
26 
27 template <class T>
29 
30 #endif // vnl_adjugate_h_
An ordinary mathematical matrix.
Definition: vnl_adjugate.h:22
void vnl_adjugate(vnl_matrix< T > const &A, vnl_matrix< T > *out)