数値解析(前期) 課題6

数値解析 (前期) 課題 6
出席番号 氏名 (1) サンプルプログラム gauss.f90 を参考にして,以下の連立一次方程式をガウスの消去法に
よって解くプログラムを作成せよ (C 言語でもよい). プログラムを実行し,数値解を求めよ.
  

x
−4
2 0 −3
 1 1 −3   y  =  −6 
0 3 −3
z
−9

(2) (1) のコードを用いて,以下の連立方程式を解け.数値解が得られる場合は検算を行い,得
られない場合はその理由を述べよ.

   
0 −3 2
x
4
 1 −1 −2   y  =  5 
4 1 −2
z
4
(3) サンプルプログラム gauss pivot.f90 を参考にして,連立一次方程式をピボット操作(対角
成分が 0 になるのを避けるように連立方程式の順番を変える操作)を含むガウスの消去法に
よって解くプログラムを作成せよ (C 言語でもよい). プログラムを実行し,(2) の連立方程式の
数値解を求めよ.
(4) サンプルプログラム jacobi.f90 を参考にして,以下の連立一次方程式をヤコビの反復法に
よって解くプログラムを作成せよ (C 言語でもよい). 初期値 (x, y, z) = 0 についてプログラムを
実行し,10 回反復したときの数値解を求めよ.
  


x
7
3 −2 0
 0 2 2   y  =  −6 
z
−1
3 0 4
(5) (4) の連立方程式の順番を入れ替えた以下の連立方程式について,(4) のプログラムを実行
し,10 回反復したときの数値解を求めよ.

  

3 0 4
x
−1
 3 −2 0   y  =  −7 
0 2 2
z
−6
[以下,余力がある人用]
(6) (4) と (5) において,連立方程式の順番を入れ替えただけで数値解の振る舞いが変わる理由
を,行列の対角成分と非対角成分の関係に注目して簡単に述べよ(裏面に記入).
(7) (5) において,変数 x, y, z の数値解の全てに対して,小数点以下 12 桁まで収束するために
必要な反復数を求めよ.
(8) テキストの演習 2-(5) (c) の連立方程式を解くことができるように,ガウスの消去法あるい
はヤコビの反復法のプログラムを 4 変数に拡張せよ.