Is there a function that populates a matrix whose minor diagonal are all the same?

Is there a function that populates a matrix whose minor diagonal are all the same, according to the given (odd-numbered) vector? For example, for
[1, 7.9, 100, 18.2, -3.4]
, we can get a 3x3 matrix:
1 7.9 100
7.9 100 18.2
100 18.2 -3.4
I can of course populate this matrix myself. I am just wondering if there is a single function provided by Matlab that can do it. Thanks.

 채택된 답변

Stephen23
Stephen23 2018년 10월 18일
편집: Stephen23 2018년 10월 18일
Use hankel:
>> V = [1,7.9,100,18.2,-3.4];
>> hankel(V(1:3),V(3:end))
ans =
1 7.9 100
7.9 100 18.2
100 18.2 -3.4
You can easily calculate the midpoint index:
N = (1+numel(V))/2;
hankel(V(1:N),V(N:end))

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Operating on Diagonal Matrices에 대해 자세히 알아보기

제품

질문:

2018년 10월 18일

댓글:

2018년 10월 18일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by