# det

## Purpose

Matrix determinant.

## Synopsis

````d = det(X)`
```

## Description

`d = det(X)` is the determinant of the square matrix `X`. If `X` contains only integer entries, the result `d` is also an integer.

Using `det(X) == 0` as a test for matrix singularity is appropriate only for matrices of modest order with small integer entries. Testing singularity using `abs(det(X)) <= tolerance` is rarely a good idea because it is difficult to choose the correct tolerance. The function `rcond(X)` is intended to check for singular and nearly singular matrices. See `rcond` for details.

## Algorithm

The determinant is computed from the triangular factors obtained by Gaussian elimination

````[L,U] = lu(A)`
`s = +1 or -1 = det(L)`
`det(A) = s*prod(diag(U))`
```

## Examples

The statement

````A = [1  2  3; 4  5  6; 7  8  9]`
```
produces

````A =`
`    1     2     3`
`    4     5     6`
`    7     8     9`
```
This happens to be a singular matrix, so

````d = det(A)`
```
produces

````d =`
`    0`
```
Changing `A(3,3)` with

````A(3,3) = 0;`
```
turns `A` into a nonsingular matrix, so now

````d = det(A)`
```
produces

````d =`
`    27`
```

``` `\`, `/`, `inv`, `lu`, `rcond`, `rref`