# istriu

Determine if matrix is upper triangular

## Syntax

``tf = istriu(A)``

## Description

example

````tf = istriu(A)` returns logical `1` (`true`) if `A` is an upper triangular matrix. Otherwise, it returns logical `0` (`false`).```

## Examples

collapse all

Create a 5-by-5 matrix.

`A = triu(magic(5))`
```A = 5×5 17 24 1 8 15 0 5 7 14 16 0 0 13 20 22 0 0 0 21 3 0 0 0 0 9 ```

Test if the matrix is upper triangular.

`istriu(A)`
```ans = logical 1 ```

The matrix is upper triangular because all elements below the main diagonal are zero.

Create a 5-by-5 matrix of zeros. Test if the matrix is upper triangular.

```Z = zeros(5); istriu(Z)```
```ans = logical 1 ```

The result is logical `1` (`true`) because an upper triangular matrix can have any number of zeros on the main diagonal.

## Input Arguments

collapse all

Input array. `istriu` returns logical `0` (`false`) if `A` has more than two dimensions.

Data Types: `single` | `double` | `logical`
Complex Number Support: Yes

collapse all

### Upper Triangular Matrix

A matrix is upper triangular if all elements below the main diagonal are zero. Any number of the elements on the main diagonal can also be zero.

For example, this matrix is upper triangular.

`$A=\left(\begin{array}{cccc}1& -1& -1& -1\\ 0& \text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}1& -2& -2\\ 0& \text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}0& \text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}1& -3\\ 0& \text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}0& \text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}0& \text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}1\end{array}\right)$`

A diagonal matrix is both upper and lower triangular.

## Tips

• Use the `triu` function to produce upper triangular matrices for which `istriu` returns logical `1` (`true`).

• The functions `isdiag`, `istriu`, and `istril` are special cases of the function `isbanded`, which can perform all of the same tests with suitably defined upper and lower bandwidths. For example, ```istriu(A) == isbanded(A,0,size(A,2))```.

## Version History

Introduced in R2014a