检测定点状态空间系统的极限环
这个例子展示了如何分析一个定点整数系统检测极限环。
专注于大规模检测极限环的例子由于零输入和高光溢出的条件足以防止这样的振荡。
选择一个整数阶系统的
通过观察,看到系统是稳定的状态转换关系矩阵的特征值一个
震级小于1
。
(0 = 1;-。5 1];B = [0;1);C = 0 [1];D = 0;eig (A)
ans =2×1复杂我0.5000 - 0.5000 0.5000 + 0.5000
滤波器的实现
这个函数fisisostatespacefilter
对于实现一个单变量状态空间过滤器。
类型(“fisisostatespacefilter.m”)
函数[y, z] = fisisostatespacefilter (A, B, C, D, x, z) % fisisostatespacefilter单,对于statespace过滤器% [y, Zf] = fisisostatespacefilter (A, B, C, D, x, Zi)过滤数据x %的初始条件子矩阵定义的状态滤波器%,B, C, D .输出y和最终条件Zf返回。% 2004 - 2011版权MathWorks公司y = x;z(: 2:长度(x) + 1) = 0;k = 1:长度(x) y (k) = C * z (:, k) + D * x (k);z (:, k + 1) = A * z (:, k) + B * x (k);结束
浮点型过滤器
创建一个浮点过滤和观察美国的轨迹。
首先,选择随机单元内的广场和观察后,他们预计一步乘以状态转换矩阵。
rng (“默认”);clf x1 = (1 1 1 1 1);日元= (1 1 1 1 1);情节(x1, y1,“c”轴([-1.5 1.5 -1.5 1.5]);轴广场;网格;持有在
广场上的投影。
p = * (x1, y1);情节(p (1:)、p (2:)“r”)r = 2 *兰德(1000)1;公关= * r;情节(公关(1:),公关(2:)“。”)
遵循随机初始状态
驱动过滤器与一个随机的初始状态,归一化单元内广场,与输入所有零,并运行过滤器。
x = 0 (10, 1);子= (0,0);q =量化器(15)(16);为k = 1:20 y = x;子(:)= randquant (q,大小(A, 1), 1);(y, zf) = fisisostatespacefilter (A, B, C, D, x, zi);情节(zf (1:), zf (2:),“去,”,“markersize”8);结束标题(“双精度状态序列图”);包含(“z1”);ylabel (“z2”)
一些单位以外的美国漫步广场,最终风到零状态在原点,z = (0, 0)
。
状态轨迹
由于特征值小于1,系统是稳定的和所有的初始状态和零输入原点了。然而,特征值不要告诉整个故事的轨迹,在这个例子中,在美国向外投射在他们开始之前先合同。
给我们一个更好的奇异值的整体状态轨迹。
圣言(A)
ans =2×11.4604 - 0.3424
最大的奇异值约为1.46,这表明国家与对应的奇异向量将预计远离原点。
创建定点滤波器
创建一个定点过滤和检查极限环。
过滤器的MATLAB®代码保持不变。它变成了一个定点过滤驱动与定点输入时。为了说明溢出振荡,选择产品和数据类型,并将溢出。
rng (“默认”);F = fimath (“OverflowAction”,“包装”,…“ProductMode”,“SpecifyPrecision”,…“ProductWordLength”,16岁,“ProductFractionLength”15岁的…“SumMode”,“SpecifyPrecision”,…“SumWordLength”,16岁,“SumFractionLength”15);一个= fi (,“fimath”F)
= 0 1.0000 -0.5000 1.0000 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 14 RoundingMethod:最近OverflowAction:包装ProductMode: SpecifyPrecision ProductWordLength: 16 ProductFractionLength: 15 SumMode: SpecifyPrecision SumWordLength: 16 SumFractionLength: 15 CastBeforeSum:真的
B = fi (B,“fimath”F)
B = 0 1 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 14 RoundingMethod:最近OverflowAction:包装ProductMode: SpecifyPrecision ProductWordLength: 16 ProductFractionLength: 15 SumMode: SpecifyPrecision SumWordLength: 16 SumFractionLength: 15 CastBeforeSum:真的
C = fi (C,“fimath”F)
C = 1 0 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 14 RoundingMethod:最近OverflowAction:包装ProductMode: SpecifyPrecision ProductWordLength: 16 ProductFractionLength: 15 SumMode: SpecifyPrecision SumWordLength: 16 SumFractionLength: 15 CastBeforeSum:真的
D = fi (D,“fimath”F)
D = 0 DataTypeMode:定点:二进制扩展Signedness:签了字:16 FractionLength: 15 RoundingMethod:最近OverflowAction:包装ProductMode: SpecifyPrecision ProductWordLength: 16 ProductFractionLength: 15 SumMode: SpecifyPrecision SumWordLength: 16 SumFractionLength: 15 CastBeforeSum:真的
情节投影在定点的广场
本单位选择随机状态广场和观察,他们预计一步后乘以状态转换关系矩阵一个
。这一次矩阵A是定点。
clf r = 2 *兰德(1000)1;公关= * r;情节([1 1 1 1 1],[1 1 1 1 1],“c”轴([-1.5 1.5 -1.5 1.5]);轴广场;网格;持有在情节(公关(1:),公关(2:)“。”)
广场的三角形,投射在浮点现在包裹回到广场的内部。
执行定点滤波器
驱动过滤与定点数据类型。
x = fi(0(10, 1), 1, 16日15日“fimath”F);子= fi(0, 0, 1, 16日15日“fimath”F);q = assignmentquantizer(子);e =双(eps(子));rng (“默认”);为k = 1:20 y = x;子(:)= randquant (q,大小(A, 1), 1);(y, zf) = fisisostatespacefilter (A, B, C, D, x, zi);如果abs(双(zf(结束)))> 0.5,c =“ro - - - - - -”;其他的c =“去,”;结束情节(zf (1:), zf (2:), c,“markersize”8);结束标题(“定点状态序列图”);包含(“z1”);ylabel (“z2”)
尝试了其他随机选择初始状态说明,一旦国家进入三角地区之一,然后投射到其他三角地区,来来回回,没有逃。
充分条件防止溢出极限环
有两个充分条件,防止溢流系统极限环:
系统是稳定的:
abs (eig (A)) < 1
矩阵是正常的:
* = *一个的
对当前表示,第二个条件不成立。
应用相似性变换建立正常一个
应用一个相似变换原始系统创建一个正常状态转换矩阵A2
。
T = [2 0; 1 1];Tinv = (-。5 0;-。5 1];A2 = Tinv * * T;B2 B = Tinv *;C2 = C * T;D2 = D;
相似变换保留特征值。系统传递函数的转换体系仍然和以前一样。然而,改变了状态转换矩阵A2
是正常的。
检查了系统极限环
情节上的投影的平方标准系统。
clf r = 2 *兰德(1000)1;公关= A2 * r;情节([1 1 1 1 1],[1 1 1 1 1],“c”轴([-1.5 1.5 -1.5 1.5]);轴广场;网格;持有在情节(公关(1:),公关(2:)“。”)
现在随机初始状态的投影单元广场内所有合同一致。这是状态转移矩阵的结果A2
是正常的。美国也是逆时针旋转90度。
再次绘制状态序列相同的初始状态。观察到输出现在螺旋向原点。
x = fi(0(10, 1), 1, 16日15日“fimath”F);子= fi(0, 0, 1, 16日15日“fimath”F);q = assignmentquantizer(子);e =双(eps(子));rng (“默认”);为k = 1:20 y = x;子(:)= randquant (q,大小(A, 1), 1);(y, zf) = fisisostatespacefilter (A2、B2, C2, D2, x, zi);如果abs(双(zf(结束)))> 0.5,c =“ro - - - - - -”;其他的c =“去,”;结束情节(zf (1:), zf (2:), c,“markersize”8);结束标题(“标准定点状态序列图”);包含(“z1”);ylabel (“z2”)
在这对其他随机选择初始状态说明没有地区过滤器是无法恢复的。
% #好< * NASGU, * NOPTS >
引用
[1]理查德·a·罗伯茨和克利福德t .温床,“数字信号处理”,addison - wesley,阅读,马萨诸塞州,1987年,ISBN 0-201-16350-0, 9.3节。
[2]s . k . Mitra“数字信号处理:一个以计算机为基础的方法”,麦格劳-希尔,纽约,1998年,ISBN 0-07-042953-7。