RREF計算機

行簡約階段形

Put one matrix row on each line. Separate entries with spaces; decimal-comma locales can use spaces, semicolons, or vertical bars between entries.

数値行列を行簡約階段形に変形し、すべての行基本変形を順に確認できます。1 × 1から8 × 8までの長方形行列を入力すると、RREF、階数、退化次数、ピボット列、自由列が表示されます。扱うのは有限の数値だけで、文字や代数式には対応していません。また、拡大係数行列を連立方程式の解として文章化する機能もありません。

RREFの計算方法

  1. 1

    行列を入力

    行列の1行をテキストの1行に入力し、数値を空白、コンマ、セミコロン、または縦線で区切ります。すべての行で要素数をそろえてください。

  2. 2

    行列の形を確認

    1 × 1から8 × 8までの任意の長方形行列を使用できます。小数と科学的記数法には対応しますが、1/3のような分数式や文字は入力できません。

  3. 3

    行基本変形を追う

    数値ピボットを選び、必要に応じて行を交換し、ピボットを1にそろえてから、その列のほかの要素を消去します。

  4. 4

    行列の構造を読む

    RREFとともに階数、退化次数、1から始まるピボット列番号と自由列番号を確認し、必要なら要約をコピーします。

行簡約階段形とは

行列が行簡約階段形であるためには、各非零行の先頭の非零成分が1であり、その位置が上の行より右にあり、ピボットを含む列のほかの成分がすべて0で、零行が下に並んでいる必要があります。この先頭の1がピボットです。

RREFは行列の数値的な構造を一定の形で表します。ピボットがある列はピボット列、残りは自由列です。階数はピボットの個数です。列数がnの行列では、ここで表示する退化次数はnから階数を引いた値で、自由列の個数とも一致します。

列番号は1から始まります。「ピボット列 1、3」と表示された場合、入力した行列の第1列と第3列を指します。

表示される行基本変形

計算には、標準的な3種類の行基本変形を使います。

  • 2つの行を交換する。
  • 1つの行を0でない数倍する。
  • 1つの行から、別の行の定数倍を引く。

各ピボット列では、残っている行の中からピボット候補の絶対値が最大の行を選びます。この部分ピボット選択により、より大きな値を利用できるときに小さな値で割ることを避けます。選んだ行を所定の位置へ移し、ピボットを1にして、その上下を0にします。途中の行列は、行基本変形の一覧にすべて表示されます。

正しい行基本変形の順序は複数あり、途中経過が異なることがあります。それでも最終的な行簡約階段形は、浮動小数点演算によるごく小さな差を除いて同じです。

数値例

初期値の行列

第1列 第2列 第3列
1 2 -1
2 4 1
-1 -2 2

の行簡約階段形は次のとおりです。

第1列 第2列 第3列
1 2 0
0 0 1
0 0 0

ピボットは第1列と第3列の2つなので、階数は2です。第2列が自由列となり、退化次数は3 - 2 = 1です。この計算機では最終行列だけでなく、そこへ至る実際の操作順序も確認できます。

階数、退化次数、ピボット列、自由列

階数は、簡約後の行列にあるピボットの数です。これは行列の列空間の次元であり、RREFにおける非零行の数にも等しくなります。

退化次数は行列の核空間の次元です。階数がrであるm × n行列では、次の関係が成り立ちます。

階数 + 退化次数 = 列数、すなわち r + 退化次数 = n

これらの値は数値的な行簡約から直接求めます。自由列がない行列では退化次数は0です。横長の行列には複数の自由列があり得ます。また、従属な行や零行がある場合、階数は行数より小さくなります。

入力規則と数値許容誤差

行列の1行をテキストの1行に入力してください。日本語ページでは、空白、コンマ、セミコロン、縦線を要素の区切りに使えます。空行は無視されますが、空でない各行の要素数は同じでなければなりません。整数、小数、2.5e-3のような科学的記数法を使用できます。各値は有限で、-1,000,000から1,000,000の範囲に限られます。

計算には浮動小数点演算を使い、簡約中に絶対値が1e-10未満となった値は0として扱います。この許容誤差により、ごく小さな丸め誤差が偽のピボットとして残ることを防ぎます。ただし、数値的に特異に近い行列では、授業や用途に必要な精度に合わせて結果を確認してください。

この計算機が対応しないもの

これは数値行列を簡約するツールであり、数式処理システムではありません。変数、式として書かれた分数、根号、数式は入力できません。行列式や逆行列の計算、パラメータ表示による解の生成、行から方程式への変換、別途記述された連立方程式の整合性判定も行いません。

数値の拡大係数行列を入力して行簡約を確認することはできますが、すべての列を1つの行列として扱います。拡大部分の境界を認識せず、最終列を定数項とも解釈しません。表示されたRREFと列の情報を確認し、線形代数の問題で指定された規則に従って利用してください。

よくある質問

1行から8行、1列から8列までの長方形の数値行列に対応します。空でない各行の要素数は同じでなければなりません。

はい。開始時の行列に加え、行の交換、行の定数倍、消去の各操作と、その直後の行列を記録して表示します。

入力できません。整数、小数、科学的記数法などの有限の数値を使用してください。1/3、平方根、文字を含む式は解析されません。

階数は簡約で見つかったピボット列の数です。退化次数は総列数から階数を引いた値で、自由列の数と一致します。

拡大係数行列のように並べた数値も行簡約できますが、変数や拡大部分の境界を認識せず、パラメータ表示の解も出力しません。

浮動小数点演算の残差を抑えるため、絶対値が1e-10未満の値を0として扱います。特異に近い行列には、高精度または厳密演算の専用ツールが必要な場合があります。

関連ツール