public float determinant () throws MatrixException
  {
    decompose ();

    // Each row exchange during forward elimination flips the sign
    // of the determinant, so check for an odd number of exchanges.
    float determinant = ((m_nExchangeCount & 1) == 0) ? 1 : -1;

    // Form the product of the diagonal elements of matrix U.
    for (int i = 0; i < m_nRows; ++i)
    {
      final int pi = m_aPermutation[i]; // permuted index
      determinant *= m_aLU.at (pi, i);
    }

    return determinant;
  }
public float determinant () throws MatrixException
  {
    decompose ();

    
    
    float determinant = ((m_nExchangeCount & 1) == 0) ? 1 : -1;

    
    for (int i = 0; i < m_nRows; ++i)
    {
      final int pi = m_aPermutation[i]; 
      determinant *= m_aLU.at (pi, i);
    }

    return determinant;
  }
public float determinant ( ) throws MatrixException { decompose ( ) ; // Each row exchange during forward elimination flips the sign // of the determinant, so check for an odd number of exchanges. float determinant = ( ( m_nExchangeCount & 1 ) == 0 ) ? 1 : - 1 ; // Form the product of the diagonal elements of matrix U. for ( int i = 0 ; i < m_nRows ; ++ i ) { final int pi = m_aPermutation [ i ] ; // permuted index determinant *= m_aLU . at ( pi , i ) ; } return determinant ; }
Compute the determinant.

@return the determinant
@throws MatrixException
if an error occurred
Compute the determinant .