不确定的矩阵
不确定矩阵(类umat
)是由双打和不确定元素,使用传统的MATLAB®矩阵构建的语法。不确定的矩阵可以添加,减去,增多,倒置,转置,等等,导致不确定的矩阵。一个不确定的矩阵的行和列引用以同样的方式,MATLAB引用一个数组的行和列,使用括号,整数指数。的NominalValue
的不确定矩阵是当所有获得的结果不确定的元素替换为自己的NominalValue
。不确定的元素组成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。不确定性”与不确定的交互元素。
看到数组不确定对象的管理更多信息不确定对象的多维数组。