第5回 表計算ソフトによるデータ処理(2)

前回は表計算ソフトの基本的な利用法を学んだ.今回は,それを一歩進めて,様々な工学分野で必要になる,多元の連立方程式の行列による表し方,表計算ソフトでの作成法,及びその解法を学ぶ.またこのことを通じて行列演算の有用性を体感し,データ処理の技術を身につける.

本講義で身につけた知識が役立つ科目等:
 実験工学・演習,FEM解析,機械力学I, II,コンピュータ機械工学,機械工学実験,
 機械設計製図2,メカトロニクス実習,ゼミナール,卒業研究など

5.1 連立方程式と行列

機械工学の様々な分野で,以下の様な連立方程式の解を得ることが要求される.

  

が成立つとすると,未知変数はである.数値的に解を得るため行列表記とすると,

  

となる.これは即ち,

  

である.ここで係数行列Aの逆行列A-1を用いれば,以下のように解xが得られる.

  

  

5.2 Excelによる行列演算

では具体的にExcelを用いて行列演算をしてみよう.具体的な例として,

  

を考える.これを行列表記にすると

  

となる.まずはこれを以下のようにExcelで表現してみよう.

  

右辺の係数行列とxには数値を入れ,左辺には行列とベクトルの乗算を行う計算式を入力する.

1.計算式を手入力する場合

計算式を入力する左上のセル番地がA1であるとき,ここに入力されるべき計算式は,

=B1*E1+C1*E2+D1*E3

である.A2とA3にも同様に式を入力する.

これで,行列Aとベクトルxの乗算が完成した.右のに様々な数値を入力して,計算が正しく行われているかどうかを確認せよ.

2.Excel組込の行列演算関数を利用する場合

セルA1には以下の行列関数を入力する.

=MMULT(B1:D3,E1:E3)

ここで,MMULT()は行列と行列,または行列とベクトルの乗算を行う関数であり,第1引数は,左側,第2引数は右側の行列あるいはベクトルを示している.

A1への入力が終わったら,A1:A3を選択してF2を押し,その後,Ctrl+Shift+Enterを入力する.

計算式を手入力した場合と結果が同じになるかどうか確認してみよ.

5.3 逆行列の演算

では次に,逆行列を作ってみよう.行列式

  

をExcel上で以下のように作成する.わかりやすくするために,先に作った行列(B1:D3)は残し,その下(以下の例ではB5:D7の部分)に逆行列を作成してみる.

B5への入力が終わったら,MMULT()の時と同様に,B5:B7を選択してからF2を押し,その後,Ctrl+Shift+Enterを入力する.すると,逆行列が以下のように求まる.

逆行列を求める為には,正方行列で無くてはならない.
行列に依っては逆行列が計算不可である場合もある.

最後に,MMULT()を用いて行列とベクトルの乗算を行えば,xを求めることができる.

得られた解は何か? 得られた解を,初めの順計算の式b=Axに代入して,同じbが得られるかどうか,確認してみよ.

5.4 その他の行列演算関数

その他のExcel組込の行列演算関数には,転置TRANSPOSE()がある.

課題


    位置ベクトルの回転(図中の座標は一例)
  1. 2次元座標上の点x1=(x1,y1)を,原点を中心に角度θ回転させる式は,以下で与えられる.

     

    この式を行列x2=Rx1として計算する表をExcelで作れ.x1,y1だけでなく,θも任意の値を与えられるようにせよ.

  2. x軸上の点(1.5, 0)を,角度45度,90度それぞれ回転させると,回転後の座標はそれぞれ何処になるか? 1.で作った表を使って計算し,ワークシート中に回答せよ.

  3. x2を入力してx1を得る表を,1.の表の下方に作成せよ.これを用いると,2.のx軸上の点(1.5, 0)はどの様に移動するか?

  4. 1. で作成した行列Rの転置行列RTを用いた式 v2=RTv1 を計算する表を,3.の表の下方に作れ.またこの式により,v1はどの様に変換されるか?1.および2.で作成した表による結果と比較して,その考察結果をワークシート中に回答せよ.

できあがったエクセルファイルをメールに添付して提出せよ.

ファイルの命名の仕方:

課題5-年組番号.xls
例: 課題5-2699.xls

年組は半角1桁,番号は半角2桁とする.命名規則に厳密に則ること.

提出期限は来週月曜午後5時までとする.