2026a

# hilb


hilbert 矩阵

函数库: TyMath

# 语法

M = hilb(n)
M = hilb(n,classname)

# 说明

M = hilb(n) 返回阶数为 n 的 Hilbert 矩阵。Hilbert 矩阵是病态矩阵的典型示例。Hilbert 矩阵的元素由 H(i,j) = 1/(i + j – 1) 指定。示例

M = hilb(n,classname) 返回 classname 类的矩阵,该类可以是 Float16、Float32、Float64 或 BigFloat 。示例

# 示例

四阶 Hilbert 矩阵

计算四阶 Hilbert 矩阵及其条件数,以查看它的病态状况。

using TyMath
H = hilb(4)
4×4 Matrix{Float64}:
1.0           0.5           0.333333      0.25
0.5           0.333333      0.25          0.2
0.333333      0.25          0.2           0.166667
0.25          0.2           0.166667      0.142857
cond(H)
ans = 15513.738738929662
指定数据类型的四阶 Hilbert 矩阵

计算数据类型为 Float16 的四阶 Hilbert 矩阵及其条件数,以查看它的病态状况。

using TyMath
H = hilb(4,Float16)
4×4 Matrix{Float16}:
 1.0     0.5     0.3333  0.25
 0.5     0.3333  0.25    0.2
 0.3333  0.25    0.2     0.1666
 0.25    0.2     0.1666  0.1428
cond(H)
ans = 24774.506f0

# 输入参数

n - 矩阵的阶次
非负整数标量

矩阵的阶次,指定为非负整数标量。

示例: hilb(10)

数据类型: Float16 | Float32 | Float64 | Int8 | Int16 | Int32 | Int64 | Int128 | UInt8 | UInt16 | UInt32 | UInt64 | UInt128 | Bool | Char

classname - 矩阵的类
Float64(默认)| Float32 | Float16 | BigFloat

矩阵的类,指定为 Float16、Float32、Float64 或 BigFloat 。

示例: hilb(10,Float16)

# 另请参阅

invhilb