主要内容

不确定的矩阵

不确定矩阵(类umat)是由双打和不确定元素,使用传统的MATLAB®矩阵构建的语法。不确定的矩阵可以添加,减去,增多,倒置,转置,等等,导致不确定的矩阵。一个不确定的矩阵的行和列引用以同样的方式,MATLAB引用一个数组的行和列,使用括号,整数指数。的NominalValue的不确定矩阵是当所有获得的结果不确定的元素替换为自己的NominalValue。不确定的元素组成umat可以通过访问不确定性网关,和每个元素的属性umat直接可以改变。属性:

属性

意义

NominalValue

标称值的元素

不确定性

不确定的矩阵块,存储为一个结构的字段命名的不确定的块,并包含不确定的元素,例如尿素的

结构体

SamplingGrid

采样网格,umat数组,存储为一个结构的字段命名的抽样变量,并包含相关的样本值数组中相应的模型。

结构体

的名字

umat的名字。当你把一个静态控制设计等尿素的一个不确定的矩阵umat(黑色),的名字块的属性保存。

字符

使用usubs特定的值,可以代替任何在一个不确定的元素umat。命令usample生成一个随机样本的不确定矩阵,用随机抽样(范围内)的不确定因素。

命令wcnorm计算严格界限最坏(最大不确定元素的范围)规范的不确定矩阵。

标准MATLAB数值矩阵(即自然可以被视为不确定矩阵没有任何不确定性。

创建和操纵不确定矩阵

您创建的不确定矩阵(umat对象)通过创建不确定参数和使用它们构建矩阵。然后您可以使用不确定矩阵构建不确定的状态空间模型。这个例子展示了如何创建一个不确定的矩阵,访问和改变它的不确定参数,提取元素,并执行矩阵运算。

例如,创建两个不确定的实际参数,并使用它们来创建一个3×2不确定矩阵。

一个=尿素的(“一个”3);b =尿素的(“b”10“比例”,20);M = (- a, 1 / b;b, a + 1 / b;1、3)
M =不确定矩阵的3行2列。不确定性包含以下模块:答:不确定真实,名义= 3,可变性=[1],2事件b:不确定真实,名义= 10,可变性= (-20,20)%,3“M事件类型。NominalValue“名义值”,得到(M)“看到所有属性,和“M。不确定性”与不确定的交互元素。

检查和修改umat属性

是一个umat对象。检查它的属性使用得到

get(米)
NominalValue (3 x2双):不确定性:[1 x1 struct] SamplingGrid: [1 x1 struct]的名字:“

的名义价值矩阵通过替换所有不确定元素与名义值。

M.NominalValue
ans =3×2-3.0000 0.1000 10.0000 3.1000 1.0000 3.0000

不确定性属性是一个(包含不确定结构元素控制设计模块)

M.Uncertainty
ans =结构体字段:[1 x1尿素的]b: [1 x1尿素的]
M.Uncertainty.a
ans =不确定实际参数与标称值“”3和可变性[1]。

使用不确定性财产直接访问不确定元素。例如,检查范围不确定元素的一个

M.Uncertainty.a.Range
ans =1×22 4

范围是(2、4)因为你创造了尿素的参数一个与标称值3和默认的不确定性(+ / - 1。变化范围(2.5,5)

M.Uncertainty.a.Range= [2.5,5]
M =不确定矩阵的3行2列。不确定性包含以下模块:答:不确定真实,名义= 3,可变性=[-0.5,2],2事件b:不确定真实,名义= 10,可变性= (-20,20)%,3“M事件类型。NominalValue“名义值”,得到(M)“看到所有属性,和“M。不确定性”与不确定的交互元素。

这个改变一个只发生在。验证变量一个MATLAB的工作区中仍然有原来的范围。

a.Range
ans =1×22 4

你不能结合的元素有一个共同的内部名称,但是不同的属性。例如,进入M.Uncertainty.a- a将生成一个错误,因为realp参数一个在工作区中有不同属性的元素一个

行和列引用

您可以使用标准row-column引用中提取的元素umat。例如,提取一个2×2的选择组成的第二和第三行。

Msub = M (2:3,:)
Msub =不确定矩阵和2行2列。不确定性包含以下模块:答:不确定真实,名义= 3,可变性=[-0.5,2],1事件b:不确定真实,名义= 10,可变性= [-20,20]% 2“Msub事件类型。NominalValue“名义值”,得到(Msub)“看到所有属性,和“Msub。不确定性”与不确定的交互元素。

您可以使用单一索引只有umat是一个列或行。单列选择从和使用单个索引引用来访问元素。

女士= M (2 1 2 3, 2);女士(2)
ans =不确定矩阵1行1列。不确定性包含以下模块:b:不确定真实,名义= 10,可变性=(-20,20)%,1事件类型“ans.NominalValue”名义价值,“把(ans)”所有属性,和“ans.Uncertainty”与不确定的交互元素。

您可以使用索引来改变任何元素的值umat。例如,设置(3 2)条目一个不确定的参数c

c =尿素的(“c”3,“比例”,40);米(3 2)= c
M =不确定矩阵的3行2列。不确定性包含以下模块:答:不确定真实,名义= 3,可变性=[-0.5,2],2事件b:不确定真实,名义= 10,可变性=(-20,20)%,2出现c:不确定真实,名义= 3,可变性=[-40,40]% 1事件类型”。NominalValue“名义值”,得到(M)“看到所有属性,和“M。不确定性”与不确定的交互元素。

现在有三个不确定的块。

矩阵操作umat对象

您可以执行许多矩阵操作umat对象,如矩阵相乘、转置和逆。你也可以把不确定的矩阵与数值矩阵,没有不确定性。

例如,自左乘由一个1×3数字矩阵,导致1×2umat

M1 = [2 3 1] * M;

确认的第一个条目M1正如预期,2 * 1 + 3 * b +

d = M1 (1) - (2 * M.Uncertainty。+ 3 * M.Uncertainty。b + 1)
d =不确定矩阵1行1列,也没有确定的块。类型d。NominalValue“名义值”,得到(d)“看到所有属性,和“d。不确定性”与不确定的交互元素。

转置,形成一个产品,并转化它。正如预期的那样,一个矩阵的乘积和它的逆矩阵也是带状的单位矩阵。您可以验证通过抽样结果。

H = M。* M;K =发票(H);usample (K * H, 3)
ans = ans (:: 1) = 1.0000 0.0000 -0.0000 1.0000 ans (:,: 2) = 1.0000 0.0000 -0.0000 1.0000 ans (:,:, 3) = 1.0000 -0.0000 -0.0000 1.0000

提升双矩阵umat

你可以转换为一个数字矩阵umat对象的不确定因素。使用umat命令电梯一个矩阵的两倍umat类。例如:

Md = (1 2 3, 4 5 6);M = umat (Md)
M =不确定矩阵2行3列,也没有确定的块。“M型。NominalValue“名义值”,得到(M)“看到所有属性,和“M。不确定性”与不确定的交互元素。

您还可以将高维数值矩阵umat。当你这样做时,软件解释第三维度和超出数组维度。例如,将一个随机三维数值数组umat

Md = randn (4、5、6);M = umat (Md)
M = 6 x1的不确定矩阵数组4行,5列,没有确定的块。“M型。NominalValue“名义值”,得到(M)“看到所有属性,和“M。不确定性”与不确定的交互元素。

结果是不确定矩阵的一维数组,而不是一个三维数组不确定。同样,一个四维数值数组转换为一个二维数组umat对象。

Md = randn (4、5、6、7);M = umat (Md)
M = 6 x7的不确定矩阵有4行,5列,没有确定的块。“M型。NominalValue“名义值”,得到(M)“看到所有属性,和“M。不确定性”与不确定的交互元素。

看到数组不确定对象的管理更多信息不确定对象的多维数组。

另请参阅

|

相关的话题