[previous] [
next
] [top]
MATLABによる数値計算教育
大石進一
早稲田大学理工学部情報学科
[
previous
] [
next
] [
top
]
MATLABの衝撃
なぜMATLABを使い始めたか
Prof. Siegfried M. Rump
信頼しているドイツの友人が使っていたから
[
previous
] [
next
] [
top
]
スイスの研究者仲間も使っていた(Prof.
Martin Hasler
)
スイスの仲間(Hasler教授)も使っていた(講演にはMATLABによるデモが必ずつくワークショップ)
[
previous
] [
next
] [
top
]
連立一次方程式の数値解の精度保証
Ax=bの近似解をcとする。
Aの逆行列の近似をRとする。
|| RA-I ||<1ならばinv(A)が存在する
真の解をx*とするならば
||x*-c||<||R(Ac-b)||/(1-|| RA-I ||)
[
previous
] [
next
] [
top
]
Rumpとの共同研究
-新しい精度保証方式-
up(); /* IEEE754 無限大方向への丸め*/
U=R*A-I;
down(); /* 負の無限大方向への丸め*/
V=R*A-I;
以上の計算でRA-Iは[V,U]に含まれる
[
previous
] [
next
] [
top
]
Cでプログラムを書いてRumpに速いだろうと聞いた
事件(Rumpの答え)
あまり速くない
メモリ管理はどうしているのかと聞かれた
[
previous
] [
next
] [
top
]
Rumpの帰った後(1997,8年ごろ)
速くするために
パソコンを買い換えた(Pentium 80MからPentium II 200Mへ) 5倍は速くなった
メモリ管理
LAPACKとBLAS(後にATLAS)を知る
RumpはMATLABを使っているらしい
当時はMATLAB VでATLASが使われていなかった
[
previous
] [
next
] [
top
]
その後
パソコン狂いになった
精度保証の高速化のためにATLASを利用した
ソースをいじるためにMATLABコンパチへ
[
previous
] [
next
] [
top
]
Octaveの開発者のモチベーション
応用化学の教授が開発者
応用科学のための数値計算の講義においてCを学ばせているだけで手一杯になってしまう
数値計算の基本プログラムを書くことから学生を解放し、その分専門のプログラミングをさせる
[
previous
] [
next
] [
top
]
MATLABによる数値計算教育の教科書を書こう!
MATLABを利用することにより数値計算の基本プログラムを書くことから学生を解放
MATLABのプログラミングのコツを伝授
MATLABは研究でも使える
[
previous
] [
next
] [
top
]
この本を書く時の方針
文系(特に経済)でも使えるようにしたい
線形代数の知識をどうするか(これも知らないことを前提として書いた)
MATLABを学生に安く配布できないものか(欧米ではできているよう、学生用のライセンス、教官のライセンス、WindowsとLinux、コピーできるパソコンの制限がはずれないか)
[
previous
] [
next
] [
top
]
オープンソースのMATLABコンパチソフトの教科書も必要
「Linux数値計算ツール」という本を書いた
Octave,Scilab,
Calc,
LAPACK,BLAS
続巻も書いているところ
[
previous
] [
next
] [
top
]
芝浦工業大学で講義をした
MATLABは制御の講義で知っている
Scilabは知らなかった
Scilabは便利なので使いたい
[
previous
] [
next
] [
top
]
専門教育でも利用したい
-精度保証付き数値計算-
学部教育用
数値解析とは精度の保証された結果を導くのにどれだけの時間がかかるかという立場からの教科書
[
previous
] [
next
] [
top
]
大学院での教育
精度保証付き数値計算
[
previous
] [
next
] [
top
]
目次
1. 精度保証の原理
2. 連立一次方程式
2.1 近似解の数値計算法
2.2 逆行列を用いた精度保証
2.2.1 精度保証のための定理
2.2.2 MATLAB によるプログラミング
[
previous
] [
next
] [
top
]
コンパイラの作成の例題として
MATLABに近い文法をもつインタプリタの作成
C言語
bisonとflex
gnuplot
LAPACKとATLAS
オープンソース
[
previous
] [
next
] [
top
]
学生の反応
一部は喜んだが、一般には反応が悪かった(かなり反応が悪くて研究室の任期が落ちた)
しかし、ほぼ全員がインタプリタを作成できた
簡単なものは電卓程度
頑張った人はちゃんとLAPACKとATLASを組み込めた
この経験をもとに現在インタプリタ作成のための教科書を書いている
[
previous
] [
next
] [
top
]
他の分野の教科書の中にも利用
待ち行列理論の教科書のなかで、マルコフ過程の定常状態の数値解析
[
previous
] [
next
] [
top
]
現状での感想
まだ、完全にうまくいったという講義ができていない
できれば文系にも教えてみたい
一年生への講義でも利用している
数値計算の講義での利用
インタプリタ作成の講義をうまくやってみたい
大学院での講義
[
previous
] [next] [
top
]
今やっていること
SCALAPACK(クラスター上での計算)
8ノードから128ノードへ
NETSOLVE
グリッド上の計算の精度保証
並列・分散処理の講義の教材にしたい