ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

equationsToMatrix

線形方程式の行列形式への変換

説明

[A,b] = equationsToMatrix(eqns) は方程式 eqns を行列形式に変換します。eqns は、symvar によって eqns 内で検出されるすべての変数の線形方程式系でなければなりません。

[A,b] = equationsToMatrix(eqns,vars)eqns を行列形式に変換します。ここで、eqnsvars 内で線形でなければなりません。

A = equationsToMatrix(___) は方程式系の係数行列のみを返します。

すべて折りたたむ

線形方程式系を行列形式に変換します。equationsToMatrix は、symvar を使用して方程式内で変数を自動検出します。

syms x y z
eqns = [x+y-2*z == 0,
        x+y+z == 1,
        2*y-z == -5];
[A,b] = equationsToMatrix(eqns)
A =
[ 1, 1, -2]
[ 1, 1,  1]
[ 0, 2, -1]
 
b =
  0
  1
 -5

線形方程式系を、独立変数を指定して行列形式に変換します。これは、方程式が一部の変数でのみ線形である場合に役立ちます。

この系に対しては、系が r では線形でないため、変数を [s t] として指定します。

syms r s t
eqns = [s-2*t+r^2 == -1
        3*s-t == 10];
vars = [s t];
[A,b] = equationsToMatrix(eqns,vars)
A =
[ 1, -2]
[ 3, -1]

b =
 - r^2 - 1
        10

単一の出力引数を指定して、方程式の係数行列のみ返します。

syms x y z
eqns = [x + y - 2*z == 0,
        x + y + z   == 1,
          2*y - z   == -5];
vars = [x y z];
A = equationsToMatrix(eqns,vars)
A =
[ 1, 1, -2]
[ 1, 1,  1]
[ 0, 2, -1]

入力引数

すべて折りたたむ

線形方程式。シンボリックな方程式または式のベクトルとして指定します。シンボリック方程式は、x + y == 1 のように、== 演算子により定義されます。シンボリック式の場合、equationsToMatrix は右辺が 0 であると仮定します。

方程式は vars の線形方程式でなければなりません。

eqns 内の独立変数。シンボリック変数のベクトルとして指定します。

出力引数

すべて折りたたむ

線形方程式系の係数行列。シンボリック行列として指定します。

方程式の右辺を含むベクトル。シンボリック行列として指定します。

詳細

すべて折りたたむ

線形方程式系の行列表現

線形方程式系

a11x1+a12x2++a1nxn=b1a21x1+a22x2++a2nxn=b2am1x1+am2x2++amnxn=bm

は、行列方程式 Ax=b として表すことができます。ここで、A は係数行列です。

A=(a11a1nam1amn)

b は、方程式の右辺を含むベクトルです。

b=(b1bm)

R2012b で導入