# det

determinant

## Calling Sequence

    det(X)
                [e,m]=det(X)

## Arguments

X

  real or complex square matrix, polynomial or rational matrix.

m

  real or complex number, the determinant base 10 mantissae

e

  integer, the determinant base 10 exponent

## Description

`det(X)` ( `m*10^e` is the determinant of the square matrix `X`.

For polynomial matrix `det(X)` is equivalent to `determ(X)`.

For rational matrices `det(X)` is equivalent to `detr(X)`.

The `det` and `detr` functions don't use the same algorithm. For a rational fraction, `det(X)` is overloaded by `%r_det(X)` which is based on the `determ` function. `detr()` uses the Leverrier method.

Sometimes the `det` and `detr` functions may return different values for rational matrices. In such cases you should set rational simplification mode off by using `simp_mode(%f)` to get the same result.

## References

det computations are based on the Lapack routines DGETRF for real matrices and ZGETRF for the complex case.

Concerning sparse matrices, the determinant is obtained from LU factorization of umfpack library.

## Examples

    x=poly(0,'x');
    det([x,1+x;2-x,x^2])
    w=ssrand(2,2,4);roots(det(systmat(w))),trzeros(w)   //zeros of linear system
    A=rand(3,3);
    det(A), prod(spec(A))

## See Also

- detr
- determ
- simp_mode