This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


Create uncertain matrix


M = umat(A)


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.


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

a = ureal('a',5,'Range',[2 6]); 
b = ucomplex('b',1+j,'Radius',0.5); 
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


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

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; 
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.

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)  

Introduced before R2006a