Main Content

fixed.backwardSubstitute

後退代入を使用した上三角方程式系の求解

説明

x = fixed.backwardSubstitute(R, C) は、上三角行列 R に対して後退代入を実行して x = R\C を計算します。

x = fixed.backwardSubstitute(R, C, outputType) は、出力変数 x のデータ型を outputType で指定して、x = R\C を返します。

すべて折りたたむ

この例では、前進代入と後退代入を使用して方程式系 (AA)x=B を解く方法を示します。

入力変数 A および B を指定します。

rng default;
A = gallery('randsvd', [5,3], 1000);
b = [1; 1; 1; 1; 1];

A の上三角因子 R を計算します。ここで、A=QR です。

R = fixed.qlessQR(A);

前進代入と後退代入を使用して X の値を計算します。

X = fixed.forwardSubstitute(R,b);
X(:) = fixed.backwardSubstitute(R,X)
X = 5×1
105 ×

   -0.9088
    2.7123
   -0.8958
         0
         0

この解は関数 fixed.qlessQRMatrixSolve を使用した場合と等価です。

x = fixed.qlessQRMatrixSolve(A,b) 
x = 5×1
105 ×

   -0.9088
    2.7123
   -0.8958
         0
         0

入力引数

すべて折りたたむ

上三角入力。行列として指定します。

データ型: single | double | fi
複素数のサポート: あり

線形システムの因子。行列として指定します。

データ型: single | double | fi
複素数のサポート: あり

出力データ型。numerictype オブジェクトまたは数値変数として指定します。outputTypenumerictype オブジェクトとして指定されている場合、出力 x は指定されたデータ型をもちます。outputType が数値変数として指定されている場合、x はその数値変数と同じデータ型をもちます。

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

出力引数

すべて折りたたむ

解。方程式 x = R\C を満たす行列として返されます。

拡張機能

バージョン履歴

R2020b で導入