Матрицы Гильберта
- hilb(n) – возвращает матрицу Гильберта порядка п. Матрица Гильберта является примером плохо обусловленной матрицы. Элементы матрицы Гильберта определяются как H(i.j)=l/(i+j-l).
Пример:
>
>
H
=
hilb(
5
)
H
=
1.0000
0.5000
0.3333
0.2500
0.2000
0.5000
0.3333
0.2500
0.2000
0.1667
0.3333
0.2500
0.2000
0.1667
0.1429
0.2500
0.2000
0.1667
0.1429
0.1250
0.2000
0.1667
0.1429
0.1250
0.1111
>
>
cond(hilb(
5
))
ans
=
4.7661e
+
005
Значение числа обусловленности матрицы Гильберта указывает на очень плохо обусловленную матрицу.
- invhilb(n) – возвращает матрицу, обратную матрице Гильберта порядка n (n<15). Для n>15 функция invhilb(n) возвращает приближенную матриц. Точная обратная матрица – это матрица с очень большими целочисленными значениями. Эти целочисленные значения могут быть представлены как числа с плавающей запятой без погрешности округления до тех пор, пока порядок матрицы n не превышает 15.
Пример:
>
>
H
=
invhilb(S)
H
=
25
-
300
1050
-
1400
630
-
300
480
-
18900
26880
-
12600
1050
18900
79380
-
117600
56700
-
1400
26880
-
117600
179200
-
88200
630
-
12600
56700
-
88200
44100
А вот результат обращения матрицы Гильберта с плавающей запятой:
>
>
inv(hilb(
5
))
ans
=
1.0e
+
005
*
0.0002
-
0.0030
0.0105
-
0.0140
0.0063
-
0.0030
0.0480
-
0.1890
0.2688
-
0.1260
0.0105
-
0.1890
0.7938
-
1.1760
0.5670
-
0.0140
0.2688
-
1.1760
1.7920
-
0.8820
0.0063
-
0.1260
0.5670
-
0.8820
0.4410