Main Content

invhilb

ヒルベルト行列の逆行列

説明

H = invhilb(n) は、約 15 より小さい n に対して、厳密なヒルベルト行列の逆行列を計算します。大きな n に対しては、関数 invhilb は、逆ヒルベルト行列の近似を作成します。

H = invhilb(n,classname)classname クラスの行列を返します。クラスは 'single' または 'double' です。

すべて折りたたむ

4 次の逆ヒルベルト行列を計算します。

invhilb(4)
ans = 4×4

          16        -120         240        -140
        -120        1200       -2700        1680
         240       -2700        6480       -4200
        -140        1680       -4200        2800

入力引数

すべて折りたたむ

行列の次数。非負の整数スカラーとして指定します。

例: invhilb(10)

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

行列クラス。'double' または 'single' として指定します。

例: invhilb(10,'single')

データ型: char

制限

厳密なヒルベルト行列の厳密な逆行列は、行列要素が大きな整数になります。行列の次数 n が 15 より小さい場合に限り、これらの整数は、丸め誤差なしに浮動小数点数として表現することができます。

invhilb(n)inv(hilb(n)) の比較は、以下の丸め誤差の 2 つまたは 3 つの影響を受けます。

  • hilb(n) に起因する誤差

  • 逆行列を求める過程での誤差

  • invhilb(n) の表現内に含まれる誤差

これらの丸め誤差のうち最初のものは、浮動小数点での 1/3 や 1/5 のような分数表現を含む、最も重要なものです。

参照

[1] Forsythe, G. E. and C. B. Moler. Computer Solution of Linear Algebraic Systems. Englewood Cliffs, NJ: Prentice-Hall, 1967.

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2006a より前に導入

参考