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)