連立方程式(鶴と亀の足の数を数えるアホはいない!)

マトリックス(行列計算)のすすめ

        


Excelを用いた科学技術計算が第2版になりました 30年10月

amazon:Excelで操る! ここまでできる科学技術計算 第2版

楽天: Excelで操る! ここまでできる科学技術計算 [ 神足 史人 ]


 実社会において、未知数を設定し、連立方程式を作り、解を求めることはよくあります。

中学生はこの連立方程式を勉強しますが、答えから逆算したような問題が多くみられます。

そういえば、むかし、小学校でつるかめ算をならいました。

つると亀の合計と、足の数の合計からそれぞれの個体数を計算したと思います。

よくかんがえると、つると亀の足の数を数えるようなアホは世の中にいません。

通常の人はつると亀の個体数を数えてから、足の数を計算します。

このような問題を解いていると、連立方程式は役に立たないものと考える生徒がでてきます。

連立方程式を解くテクニックは身につきますが、連立方程式の意義、価値、重要性が理解で

きません。



連立方程式を解きJR福知山線脱線事故の原因を解明する



               JR福知山線脱線車両の力のつり合い図

JR福知山線脱線事故
2005年4月25日の記憶 あの日を忘れない

JR福知山線事故の本質

一両目の真実

最後の絵手紙
福知山線脱線事故で夫を失った妻の手記

サバイバル・バイブル全編改訂版

墜落遺体
御巣鷹山の日航機123便

あんしんの殿堂防災館

★防災グッズ特集★



 力のつり合いの法則に基づき、既知の値(レール間隔、電車重量、電車速度、カーブ半径等)と未知の値(左右レール支持力、反力)で連立方程式を立て、未知の値を算出します。

このように、連立方程式は計測が困難な値を算出する便利なツールです。



図形処理にも連立方程式が必要



 
 図形処理においても、直線や円の方程式を作り、連立方程式を解き交点を求めるのが正当な方法です。 

学校で学んだ幾何学的図形処理方法は特殊すぎて、実際の業務には役に立ちません。

参考

エクセルを用いた2直線の交点計算

エクセルを用いた円と直線の交点計算

エクセルを用いた円と円の交点計算



連立方程式はマトリックス(行列計算)で解く



 変数がx、y(2個)の1次連立方程式ならば、筆算でも対応できます。
変数が3個以上の方程式になると計算手続き、計算量が多くなり、計算が困難となります。

コンピュータのなかった戦前、ゼロ戦を設計するため、変数が17個の連立方程式を解く必要があり、
設計者は手動計算機(当時は最新だったろうが、どんなものか見当がつかない)を使い数ヶ月かかり
答えをだしたとの書物がありました。

現在、私も構造解析のため、連日、変数が数千、数万の連立方程式を解いています。
パソコンを使えば数秒で解がでます。これを筆算で行うと一生かかってもできません。
(百生かかってもできないかも・・・・)

筆算により連立方程式を理解することは重要です。しかしながら、筆算の限界を知るべきです。

変数が3個以上の連立方程式はコンピューターを使わないと解けないと言っても過言ではない。
連立方程式をコンピュータで解くためには、連立方程式をマトリックス表記する必要がある。



マトリックス(行列)の定義


 mn個の数をm行、n列に並べたものをm行、n列のマトリックス(行列)と言い、
個々の数値をその元と言う。


上記例は3行3列のマトリックスである。
行数と列数が同じマトリックスをn次正方マトリックスと言う。
(今回はこの正方マトリックスを取り扱う)

列(行)数が1個の場合、ベクトルとなる。





マトリックス(行列)演算


 マトリックス を下記とすると、



マトリックスどうしの和、差はその元どうしの和、差となる。





マトリックスの係数倍はその元を係数倍する。



マトリックスどうしのかけ算はすこし複雑となる。



Aのi行とBのj列どうしのベクトルを前から順次かけていき、合計した値 
A×Bのi行j列の元とする。



i 行 j列の元(cij)は cij = ai1b1j + ai2 b2j + ai3 b3j となる。

演算則

 = はすべての元どうしが等しい。

 A + B = B + A

 ( A + B ) + C = A + ( B + C )

 ( A + B ) × C = A × C + B × C

 A × ( B + C ) = A × B + A × C

 A × ( B×C ) = (A ×B ) ×C

 A × BB × A (必ずしも等しくない、偶然等しい場合もある)



逆マトリックス(逆行列)

 
 単位マトリックス(単位行列)

対角部の元が1で、その他の元が0のマトリックスを単位マトリックス(E )と言う。



A × E = A, E × A = A となる。

正方マトリックスA に対し X × A = E となるマトリックス X が存在するとき、
これを A の逆マトリックスと言い、 A-1 で表す。


すなわち、 A-1 × A = E 、また A × A-1 = E である。

逆マトリックス計算はEXCELの関数を使えば容易である。



連立方程式のマトリックス表記

 
 下記の連立1次方程式を考えよう。
 (変数は x1, x2, x3)

連立方程式が解ける条件として、式の数と変数の数が同じである必要がある。

   a11 x1 + a12 x2 + a13 x3 = b1  
   a21 x1 + a22 x2 + a23 x3 = b2  
   a31 x1 + a32 x2 + a33 x3 = b3  







とおき、マトリックスで表記すると、極めて簡単に

  A ×x = b

となる。




連立方程式の解き方


 連立方程式は下記マトリックス式で表記できる。

    A ×x = b

両辺に逆マトリックス A-1をかける。

   A-1 × ( A × x ) = A-1 × b

   (A-1 × A ) × x = A-1 × b

  A-
1 × A = E より

   E × x = A-1 × b

   x = A-1 × b

これで解 x が求まった。



連立方程式をエクセル(EXCEL)で解いてみよう


 EXCELで連立方程式 A × x = b を解いてみよう。


@ マトリックス( A )、 ベクトル( b ) の入力

 元来EXCELは行列(マトリックス)でできている。
 任意位置にマトリックス、ベクトルエリアを確保し、値を入力する。

A逆マトリックス( A-1 ) の計算

 任意位置に逆マトリックス A-1 のエリアを確保し、
関数 MINVERSE( マトリックス A )を設定する。
注) 複数エリアに関数を設定する場合 Ctrl Shift キーを押しながら、
   Enterをキー入力する。

B 逆マトリックス( A-1 ) × ベクトル( b ) の計算

  任意位置に解 ( x ) のエリアを確保し、
関数 MMULT( 逆マトリックス( A-1 ), ベクトル( b ) )を設定すると、
解 ( x ) が求まる。

C 検算

 求まった解( x )を使用し、 A × x を計算し、その値が b と一致することを
確認する。


解がないケース

つると亀の足の数が異なるため、つる亀算は計算できる。
それでは、犬亀算ではどうでしょう?

犬も亀も足の数が同数(4本)なので、それぞれの個体数を特定することは
不可能です。
この場合、マトリックス計算では逆マトリックスが存在しません。
EXCELでは逆マトリックス計算でエラーとなる。


このように、EXCELを使えば連立方程式はワンパターンで、容易に解けます。
連立方程式を解くことより、方程式を作る(モデル化)ほうが難しい。




連立方程式をEXCELのVBAで解いてみよう


 連立方程式をEXCELのVB(ビジュアルベーシック)をつかって、解いて見ましょう。
解法はガウス・ザイデル法を採用します。
一般的に、マトリックスの次元が大きくなると、吐出法よりはガウス・ザイデル法の
ほうが、精度が良いようです。



最小2乗法も連立方程式を解く


 誤差を含む点列の近似関数を作るとき、最小2乗法が良く使われます。
最小2乗法も連立方程式を作り、これを解きます。
EXCELによる最小2乗法で近似関数を作ってみよう。



マトリックスを用いた座標回転


 座標回転マトリックスを用いると容易に図形が回転できます。



エクセルを用いた集中荷重を受ける梁のたわみ計算

エクセルを用いた分布荷重を受ける梁のたわみ計算

エクセルを用いたモーメント荷重を受ける梁のたわみ計算


 集中荷重、分布荷重、モーメント荷重を受ける梁のたわみ計算も連立方程式を解く。 


エクセルを用いたスプライン補間法による近似曲線
スプライン補間法でも連立方程式を解く。


Googleは超巨大マトリックスを分析しページランクを決めている


 検索サイトGoogleは世界中から取り込んだウェブのページに0〜10のランクをつけている。
(数値が大きいほど重要性が高く、80億程度のページが取り込まれているようです。)
このページランクを参考にして、検索結果の並び順を決めるため、的確な検索となっている。
多くのページから参照されているページは重要なページと判断されている。
また参照ページのランクも考慮されている。(重要なページからリンクされているページは重要)

このため、行数、列数がページ数(80億)の超巨大マトリックスを作り、ページ間の関係を設定し
これを分析(固有値解析)し、ページランクを算出している。
(巨大マトリックスと言っても、1ページの平均リンク数はせいぜい数十程度なのでほとんど0の
マトリックス)



中学、高校生へのマトリックスのすすめ


 近年、コンピュータ技術の発展は著しく、実社会に大いに貢献しています。
またパソコンの値段も安価となり、個人でも保有できるようになりました。
それにもかかわらず、中学、高校生の数学の内容はほとんどコンピュータ発展前
と同じです。

コンピュータ発展前、数学者は筆算が速くできる方法、ロジック、定理などを研究
したと思われます。
昔は重要でしたが、コンピューターが普及した現在、ほとんど使わないと思われる
定理など教科書に見うけられます。

重要性が減少したものを教科書から削除したほうがよいと思われます。

削除できない原因は大学受験が筆算だから? でしょうか?

削除すべきものがあれば、追加すべきものもあります。

ここで取り上げたマトリックスもその1つです。

マトリックスを用いると変数が3以上の連立1次方程式が解けます。

このコンピューター時代、大量の数をひとまとめし、同時に取り扱うマトリックスを
大いに勉強する必要があります。

マトリックスを使うことにより、解けることが出来る問題が無限に広がっていきます。

ところで、映画のマトリックスってどうゆう意味でしょうか?

3次元空間を座標変換するマトリックスがあるのですが、時空変換と言う意味
でしょうか?



 






エクセルのソルバーを用いた最小作用の原理に基づく質点の軌道計算
大発見、エクセルのソルバーで質点の軌道計算ができる。


Excelを用いた地球温暖化計算



EXCELを用いた科学技術計算

EXCELのソルバーを用いた科学技術計算

EXCELを用いた構造力学(材料力学)計算



〒673−0036 兵庫県明石市松江62−14
(有)ゴッドフット企画



感想をお聞かせ下さい




JR福知山線 脱線事故シミュレーション

脱線事故シミュレーションも連立方程式を解く
(Yahoo Japan 掲載)


Copyright (C) GODFOOT 2007 All Rights Reserved.