2026a
# hankel
Hankel 矩阵
函数库: TyMath
# 语法
H = hankel(c)
H = hankel(c,r)
# 说明
H = hankel(c) 返回正方形 Hankel 矩阵,其中 c 定义矩阵的第一列,主反对角线以下的元素为零。示例
H = hankel(c,r) 返回 Hankel 矩阵,第一列为 c,最后一行为 r。如果 c 的最后一个元素不同于 r 的第一个元素,则 hankel 会发出警告,并对反对角线使用 c 的最后一个元素。示例
# 示例
创建对称 Hankel 矩阵
创建一个对称 Hankel 矩阵。
using TyMath
c = [1,2,3,4]
hankel(c)
ans = 4×4 Matrix{Int64}:
1 2 3 4
2 3 4 0
3 4 0 0
4 0 0 0
创建非对称 Hankel 矩阵
用指定的列和行向量创建一个非对称 Hankel 矩阵。
using TyMath
c = [2,4,6]
r = [6,5,4,3,2,1]
hankel(c,r)
ans = 3×6 Matrix{Int64}:
2 4 6 5 4 3
4 6 5 4 3 2
6 5 4 3 2 1
创建另一个非对称 Hankel 矩阵。如果列向量的最后一个元素与行向量的第一个元素不匹配,则 hankel 会发出警告,并将列的最后一个元素用作反对角线元素。
c = [1,2,3]
r = [4,5,7,9]
hankel(c,r)
ans = 3×4 Matrix{Int64}:
1 2 3 5
2 3 5 7
3 5 7 9
用复数元素创建 Hankel 矩阵
用复数行向量和列向量创建一个 Hankel 矩阵。
using TyMath
c = [1+2im,2-4im,-1+3im]
r = [-1+3im,3-im,1-2im]
hankel(c,r)
ans = 3×3 Matrix{Complex{Int64}}:
1+2im 2-4im -1+3im
2-4im -1+3im 3-1im
-1+3im 3-1im 1-2im
计算 Hankel 矩阵
创建其第一列是 c 并且其最后一行是 r 的 Hankel 矩阵。
using TyMath
c = 1:3
r = 3:6
h = hankel(c, r)
3×4 Matrix{Int64}:
1 2 3 4
2 3 4 5
3 4 5 6
# 输入参数
c - Hankel 矩阵的第一列标量|向量
Hankel 矩阵的第一列,指定为标量或向量。
数据类型: Int64 | Int32 | Int16 | Int128 | Float16 | Int32 | Int64 | UInt8 | UInt16 | UInt32 | UInt64
复数支持: 是
r - Hankel 矩阵的最后一行标量|向量
Hankel 矩阵的第一列,指定为标量或向量。
数据类型: Int64 | Int32 | Int16 | Int128 | Float16 | Int32 | Int64 | UInt8 | UInt16 | UInt32 | UInt64
复数支持: 是
# 详细信息
Hankel 矩阵
在 Hankel 矩阵中,沿每个反对角线的元素相等。
如果 c 是 Hankel 矩阵的第一列,r 是 Hankel 矩阵的最后一行,则 p = [c r(2:end)] 使用映射