2021年9月16日こんにちは(@t_kun_kamakiri)(^^)/前回では連立方程式を解くための公式であるクラメルの公式とその演習問題について解説を行いました。【例題演習】クラメルの公式を使って連立方程式を解くクラメルの公式は手計算で3つの連立方程式を解く際には有効な手段ではありますが、4つの連立方程式を解く際にはちょっと無理がある解法です。3つの連立方程式をクラメルの公式を用いて解く際には、3次正方行列の行列式を計算する必要があるからです。3次の正方行列までならサラスの公式を使うことで行列式を簡単に手計算でも求めることができますが、4次の正方行列だとそうはいきません。数値計算をしようものなら1000つ程度の連立方程式を解く必要があったり、1000×1000の規模の大きさの行列を取り扱います。そこで大規模な連立方程式を数値計算で解く際にも使われるのがこちら。今回は掃き出し法について紹介します。次の連立方程式の解$x_{1},x_{2},x_{3}$を掃き出し法を使って求めます。\begin{align*}\left\{\begin{matrix}3x_{1}+2x_{2}+x_{3}&=&1\\2x_{1}+2x_{2}+x_{3}&=&5\\x_{1}+3x_{2}+2x_{3}&=&2\end{matrix}\right.\tag{1}\end{align*}これから線形代数を学ぶ学生や社会人のために「役に立つ内容にしたい」という思いで記事を書いていこうと考えています。く問題はこちらですね。\begin{align*}\left\{\begin{matrix}3x_{1}+2x_{2}+x_{3}&=&1\\2x_{1}+2x_{2}+x_{3}&=&5\\x_{1}+3x_{2}+2x_{3}&=&2\end{matrix}\right.\tag{1}\end{align*}まずは連立方程式を行列に書きなおしてやりましょう。\\2\end{pmatrix}}\tag{2}\end{align*}このように行列にすれば$AX=B$の$X$を求めればよいのがわかりますね。$A$が3行3列の行列、$B$が3行1列の行列です。ここで表記上の話ですが、(2)の$X$を除いて左辺の行列$A$と右辺の行列$B$を以下のように表記します。係数だけを並べて、行列$A$と行列$B$拡大した行列なので拡大係数行列と言います。このように書いておくと掃き出し法で連立方程式を解く際には便利なのですね。&2\end{matrix}\right|\left.\begin{matrix}1\\5\\2\end{matrix}\right]$の表記を扱うかが本記事の内容となります。どのように便利かを体験するために、まずは拡大係数行列の記法を使わずに掃き出し法で連立方程式を解いてみましょう。拡大係数行列を使わずに掃き出し法で解くここで連立方程式を解く方法は、あくまで掃き出し法です。\begin{align*}\left\{\begin{matrix}3x_{1}+2x_{2}+x_{3}&=&1\\2x_{1}+2x_{2}+x_{3}&=&5\\x_{1}+3x_{2}+2x_{3}&=&2\end{matrix}\right.\tag{1}\end{align*}ここで解説するステップを踏むことで比較的簡単に連立方程式を解くことができます。Step1:上から下へ掃き出していくまずは変数をどんどん消していく作業をします。上の式を使って下の式の変数を消去していきます。1について1つ目の式を$-\frac{2}{3}$をかけて2つ目の式に足す1つ目の式を$-\frac{1}{3}$をかけて3つ目の式に足す2つ目と3つ目のしきを$3$倍する2についてできた式に以下の操作を行います。2つ目の式を$-\frac{7}{2}$倍して3つ目の式に足す3つ目の式を$\frac{2}{3}$倍して$x_{3}$を求める以上で上から下へ引き算を行って$x_{3}=-27$が求まります。カマキリ上から下へ向かって掃除するように掃き出しているStep2:下から上に掃き出していく今度は下の式を使って上の式の変数を消去していきます。3について3つ目の式を$+1$かけて2つ目の式に足す3つ目の式を$-1$かけて1つ目の式に足す2つ目の式の両辺を$\frac{1}{2}$倍することで$x_{2}=20$と求まります。4について2つ目の式を$-1$かけて1つ目の式に足して$x_{2}$を消去する1つ目の式を$\frac{1}{3}$をかける$x_{1}=-4$と求まる以上のステップを踏むと、\begin{align*}\left\{\begin{matrix}&x_{1}&&&=&-4\\&&x_{2}&&=&20\\&&&x_{3}&=&-27\end{matrix}\right.\end{align*}今回は計算をしてみて「$x_{1},x_{2},x_{3}$の係数のみ計算しているのだから、$x_{1},x_{2},x_{3}$とわざわざ書くのが面倒だな」って思ったことでしょう。そこで、$x_{1},x_{2},x_{3}$を書かずに上記の計算を行える記法が拡大係数行列です。拡大係数行列を使って連立方程式を解くでは、先ほどの問題を拡大係数行列を使ってやってみましょう。最終目標は拡大係数行列の左側を対角成分がのみが1になる単位行列$E$にすることです。拡大係数行列で変形していった最後の「?」の部分はどうなるでしょうか?計算を進めながら考えてみましょう。拡大係数行列を使うと$x_{1},x_{2},x_{3}$を書かない分すっきりと計算を進めることができますね。結果をまとめておくと以下の3つの表記は異なりますが意味は同じです。$X$を求めるには$AX=B$の両辺に左から$A$の逆行列$A^{-1}$をかけることで求まることができますね。拡大係数行列の最初の式から、左側が単位行列$E$になるように変形するということは右側は$A^{-1}B$となっているということです。まとめ今回は拡大係数行列を使って掃き出し法で連立方程式を解きました。手計算の上でも、数値計算を行う上でも変数が多い場合(もっと大きな行列計算が必要な場合)でも掃き出し法はとても有効な手段ですので是非練習しておきましょう。カマキリ次回お楽しみに!参考にする参考書はこれ当ブログでは、以下の2つの参考書を読みながらよく使う内容をかいつまんで、一通り勉強すればついていけるような内容を目指していこうと思います。01:35時点)Amazon楽天市場YahooAmazonの情報を掲載しています大事なところをかいつまんで、「これはよく使うよな。コメントをキャンセルメールアドレスが公開されることはありません。製造業コミュニティ製造業コミュニティは製造業で働く方や製造業へ就職を考えている学生の方が匿名で気軽に情報交換を出来るオンラインコミュニティです。本が聴けるアプリAudible(オーディブル)☟30日間の無料体験(最初の1冊は無料)プロフィールカマキリ(^^)大学の専攻は物性理論で、Fortranを使って数値計算をしていました。CAEを用いた流体解析は興味がありOpenFOAMを使って勉強しています。CAE解析(流体解析)notenoteで内容は主に「プログラミング言語」の勉強の進捗を書いています。「現在勉強中の内容」「日々思ったこと」も日記代わりに書き記しています。1DCAEの操作方法などを動画にしています。(音声はありません_(._.)_)製造業コミュニティをやっています。Facebookを使った実名登録。製造業ブロガーコミニティ案内オンライン家庭教師のご要望あればご連絡ください。Amazonのアソシエイトとして、当メディアは適格販売により収入を得ています。・当メディアはGoogleによるユーザーに合わせた自動広告が表示されます。Twitterカマキリ☟こちら日々の「思ったこと」「勉強している内容」を発信しています。4Pythonを使ってTwitterAPIで自作botを作りました。製造業コミュニティの方々と運営しています。botを作るのかを知りたい方はこちら。【超丁寧に解説】Pythonを使ってTwitterAPIでGoogleスプレッドシートに書いた内容を画像付きでツイート投稿する。宇宙に入ったカマキリ。