MATLAB如何使用hankel函数创建Hankel(汉克尔)矩阵

2020年12月18日14:16:36MATLAB如何使用hankel函数创建Hankel(汉克尔)矩阵已关闭评论

MATLAB如何使用hankel函数创建Hankel(汉克尔)矩阵

【语法说明】

Y=hankel(c,r):矩阵Y的第一列元素为向量c,最后一行元素为向量r,如果c的最后一个元素与r的第一个元素不同,则交叉位置元素取c的最后一个元素。其余位置的元素Y(i,j)等于该位置左下角处的元素值 Y(i+1, j−1)。也可以用另一种形式表达:P=[c, r(2:end)],Y(i, j)=P(i+j−1)。

Y=hankel(c):相当于 Y=hankel(c,zeros(1,length(c)))。由此形成的矩阵Y次对角线以下元素均为零。

【功能介绍】生成Hankel矩阵,该矩阵中的元素等于其左下方位置的元素值。

【实例】给定向量 c=[2,1,4],r=[4,3],分别生成 3×3和3×2大小的Hankel矩阵。

>> c=[2,1,4];   % 第一列

>> r=[4,3];   % 第一行

>> a=hankel(c,r)  % 用c和r生成hankel矩阵

a =

2 1

1 4

4 3

>> a=hankel(c,fliplr(r)) % 将r变为[3,4],此时c的最后一个元素与r的第一个元素不相等

Warning: Last element of input column does not match first element of input row.

Column wins anti-diagonal conflict.

> In hankel at 27

a =

2 1

1 4

4 4

>> a=hankel(c) % hankel(c)将生成3*3大小的hankel矩阵

a =

2 1 4

1 4 0

4 0 0

【实例讲解】当c的最后一个元素与r的第一个元素不相等时,系统会忽略r的第一个元素,并给出一条警告。

  • 版权声明:本篇文章(包括图片)来自网络,由程序自动采集,著作权(版权)归原作者所有,如有侵权联系我们删除,联系方式(QQ:452038415)。