10 #ifndef EIGEN_DETERMINANT_H 11 #define EIGEN_DETERMINANT_H 17 template<
typename Derived>
21 return matrix.coeff(0,a)
22 * (matrix.coeff(1,b) * matrix.coeff(2,c) - matrix.coeff(1,c) * matrix.coeff(2,b));
25 template<
typename Derived>
29 return (matrix.coeff(j,0) * matrix.coeff(k,1) - matrix.coeff(k,0) * matrix.coeff(j,1))
30 * (matrix.coeff(m,2) * matrix.coeff(n,3) - matrix.coeff(n,2) * matrix.coeff(m,3));
33 template<
typename Derived,
34 int DeterminantType = Derived::RowsAtCompileTime
39 if(Derived::ColsAtCompileTime==
Dynamic && m.rows()==0)
41 return m.partialPivLu().determinant();
57 return m.coeff(0,0) * m.coeff(1,1) - m.coeff(1,0) * m.coeff(0,1);
91 template<
typename Derived>
101 #endif // EIGEN_DETERMINANT_H static traits< Derived >::Scalar run(const Derived &m)
Scalar determinant() const
const Derived::Scalar bruteforce_det3_helper(const MatrixBase< Derived > &matrix, int a, int b, int c)
static traits< Derived >::Scalar run(const Derived &m)
iterative scaling algorithm to equilibrate rows and column norms in matrices
static traits< Derived >::Scalar run(const Derived &m)
const Derived::Scalar bruteforce_det4_helper(const MatrixBase< Derived > &matrix, int j, int k, int m, int n)
static traits< Derived >::Scalar run(const Derived &m)
static traits< Derived >::Scalar run(const Derived &m)
Base class for all dense matrices, vectors, and expressions.