主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

線形方程式系の求解

この節では符号数学工具箱™を使用して線形方程式系を解く方法を説明します。

linsolveを使用した線形方程式系の求解

線形方程式系

一个 11 x 1 + 一个 12 x 2 + ... + 一个 1 n x n b 1 一个 21 x 1 + 一个 22 x 2 + ... + 一个 2 n x n b 2 一个 1 x 1 + 一个 2 x 2 + ... + 一个 n x n b

は,行列方程式 一个 x b として表すことができます。ここで,は次の係数行列です。

一个 一个 11 ... 一个 1 n 一个 1 一个 n

また, b は,方程式の右辺

b b 1 b

を含むベクトルです。

線形方程式系がAX = Bの形式になっていない場合は,equationsToMatrixを使用して方程式をこの形式に変換します。以下の方程式系を考えます。

2 x + y + z 2 x + y z 3. x + 2 y + 3. z 10

方程式系を宣言します。

Syms x y z eqn1 = 2*x + y + z = 2;Eqn2 = -x + y - z == 3;Eqn3 = x + 2*y + 3*z = -10;

equationsToMatrixを使用して方程式をAX = Bの形式に変換します。equationsToMatrixへの2番目の入力は方程式の独立変数を指定します。

[A,B] = equationsToMatrix([eqn1, eqn2, eqn3], [x, y, z])
(2, 1, 1) = (1 1 1) [1, 2, 3] B = 2 3 -10

linsolveを使用してAX = Bを解き,不明なXのベクトルを求めます。

X = linsolve (A, B)
X = 3 1 -5

Xからx = 3y = 1およびz = 5が求められます。

解决を使用した線形方程式系の求解

方程式が係数の行列ではなく式の形式である場合はlinsolveの代わりに解决を使用します。同様の線形方程式系を考えます。

2 x + y + z 2 x + y z 3. x + 2 y + 3. z 10

方程式系を宣言します。

Syms x y z eqn1 = 2*x + y + z = 2;Eqn2 = -x + y - z == 3;Eqn3 = x + 2*y + 3*z = -10;

解决を使用して方程式系を解きます。解决への入力は方程式のベクトルと,方程式から求める変数のベクトルです。

求解[eqn1, eqn2, eqn3], [x, y, z];xSol = sol.x ySol = sol.y zSol = sol.z
xSol = 3 ySol = 1 zSol = -5

解决は解を構造体配列で返します。解にアクセスするには配列のインデックスを指定します。

関連するトピック