文章目录
- 1、ureal语法
- 2、ureal属性描述
- 3、例子
ureal函数用于创建一个不确定实参数,多用于创建不确定系统
1、ureal语法
p = ureal('name',nominalvalue)
p = ureal('name',nominalvalue,'Property1',Value1,'Property2',Value2,...)
2、ureal属性描述
不确定实参数用来表示不确定的实数。不确定实参数的属性有一个"名称(name属性)“和一个"标称值(nomalvalue属性)”。
不确定性(与标称值(nomalvalue)的潜在偏差)在3个不同的属性中的描述:
- PlusMinus(正负):不确定实参数与nomalvalue之间的偏差
- Range(范围):不确定实参数的变化范围
- Percentage(百分比):不确定实参数以nomalvalue为真值的相对误差
Mode属性指定如果nomalvalue被更改,这三个不确定性描述中的哪一个保持不变。Mode属性的可能值是’Range’, ‘Percentage’和’ PlusMinus ‘。Mode的默认值是’PlusMinus’,[-1 1]是’PlusMinus’属性的默认值。不确定性中的Range不需要对nomalvalue对称。
AutoSimplify属性控制如何简化包含不确定矩阵的表达式。它的默认值是’basic’,这意味着在操作完成时应用基本的简化方法。AutoSimplify的其他值为“off”,表示不执行简化,以及“full”,表示对不确定对象应用类似模型简化的技术。
3、例子
例1
创建一个不确定实参数,并使用get来显示属性及其值。使用名称’a’和标称值‘5’创建不确定实参数对象a
a=ureal('a',5);
get(a)
运行结果:
NominalValue: 5
Mode: 'PlusMinus'
Range: [4 6]
PlusMinus: [-1 1]
Percentage: [-20 20]
AutoSimplify: 'basic'
Name: 'a'
注意Mode是’PlusMinus’, PlusMinus的值确实是[-1 1],说明a与’5’的偏差范围是[-1,1]。不确定性的Range描述为[4 6],说明a的变化范围为[4,6]。不确定性的Percentage描述为[-20 20],表示a以‘5’为真值的相对误差范围为[-20,20]。
然后我们继续将a的变化范围设置为[3 9]。这使得Mode和nomalvalue保持不变,但是所有的三种不确定性都会被修改。
a.Range = [3 9];
get(a)
运行结果:
Name: 'a'
NominalValue: 5
Mode: 'PlusMinus'
Range: [3 9]
PlusMinus: [-2 4]
Percentage: [-40 80]
AutoSimplify: 'basic'
例2
在创建时也可以指定其他属性值。现在我们将不确定实参数的不确定性Percentage指定为[-30,40],AutoSimplift指定为’full’。
b = ureal('b',6,'Percentage',[-30 40],'AutoSimplify','full');
get(b)
运行结果:
Name: 'b'
NominalValue: 6
Mode: 'Percentage'
Range: [4.2000 8.4000]
PlusMinus: [-1.8000 2.4000]
Percentage: [-30.0000 40.0000]
AutoSimplify: 'full'
注意,此时Mode会自动设置为“Percentage”。
例3
从例2中我们可以看到,当我们在创建不确定实参数时指定了不确定性的Percentage时,Mode会自动的变为"Percentage",现在依然以Percentage指定不确定性,但强制Mode变为“Range”。
c = ureal('c',4,'Mode','Range','Percentage',25);
get(c)
运行结果:
Name: 'c'
NominalValue: 4
Mode: 'Range'
Range: [3 5]
PlusMinus: [-1 1]
Percentage: [-25 25]
AutoSimplify: 'basic'