# umat

Create uncertain matrix

M = umat(A)

## Description

Uncertain matrices are rational expressions involving uncertain elements of type ureal, ucomplex, or ucomplexm. Use uncertain matrices for worst-case gain analysis and for building uncertain state-space (uss) models.

Create uncertain matrices by creating uncertain elements and combining them using arithmetic and matrix operations. For example:

p = ureal('p',1);
M = [0 p; 1 p^2]

creates a 2-by-2 uncertain matrix (a umat object) with the uncertain parameter p.

The syntax M = umat(A) converts the double array A to a umat object with no uncertainty.

Most standard matrix manipulations are valid on uncertain matrices, including addition, multiplication, inverse, horizontal and vertical concatenation. Specific rows/columns of an uncertain matrix can be referenced and assigned also.

If M is a umat, then M.NominalValue is the result obtained by replacing each uncertain element in M with its own nominal value.

If M is a umat, then M.Uncertainty is an object describing all the uncertain elements in M. All element can be referenced and their properties modified with this Uncertainty gateway. For instance, if B is an uncertain real parameter in M, then M.Uncertainty.B accesses the uncertain element B in M.

## Examples

Create 3 uncertain elements and then a 3-by-2 umat.

a = ureal('a',5,'Range',[2 6]);
c = ureal('c',3,'Plusminus',0.4);
M = [a b;b*a 7;c-a b^2]

M is an uncertain matrix (umat object) with the uncertain parameters a, b, and c.

View the properties of M with get

get(M)

The nominal value of M is the result when all atoms are replaced by their nominal values.

M.NominalValue
ans =
5.0000             1.0000 + 1.0000i
5.0000 + 5.0000i   7.0000
-2.0000                  0 + 2.0000i

Change the nominal value of a within M to 4. The nominal value of M reflects this change.

M.Uncertainty.a.NominalValue = 4;
M.NominalValue
ans =
4.0000             1.0000 + 1.0000i
4.0000 + 4.0000i   7.0000
-1.0000                  0 + 2.0000i

Get a random sample of M, obtained by taking random samples of the uncertain atoms within M.

usample(M)
ans =
2.0072             0.8647 + 1.3854i
1.7358 + 2.7808i   7.0000
1.3829            -1.1715 + 2.3960i

Select the 1st and 3rd rows, and the 2nd column of M. The result is a 2-by-1 umat, whose dependence is only on b.

M([1 3],2)

## Version History

Introduced before R2006a