読書メモ

・「MATLABプログラミングブック
(赤間 世紀 :著、秀和システム \2,800) : 2009.01.22

内容と感想:
 
先日読んだ「Octaveによるシミュレーション入門」の著者。 「Octave」はオープンソースの数値計算ツールだが、こちら「MATLAB」は商用ソフト。 さすがに商用だけに「Octave」よりも機能は強力である。 ツールボックスという様々なツールが用意されている(本書では説明はわずか)。
 本書はそのMATLABによる技術計算プログラミングの解説書である。 MATLABを単なる「技術計算ツール」として使うだけでなく、「技術計算プログラミング言語」としての可能性を 著者は感じて本書を書いている。 構造化プログラミング、オブジェクト指向プログラミングにも対応している。 「MATLABの強力な数値計算機能を利用した処理をC言語イメージでプログラミングすることができる」(Chapter5)。 クラスの定義の仕方や利用方法についても少し触れている(同章)。
 本書では行列計算や線形代数計算、数値計算などのプログラミング例、グラフィックスの使い方などを中心に解説している。 内容は「Octaveによる〜」と同じスタイルで書かれ、重複する部分も多いが、プログラミングすることによって 得られる更なるメリットと、機能の強力さを感じ取ることが出来るだろう。

○ポイント
・Mファイル:コマンド列をユーザライブラリとして登録、再利用可能
・Handle Graphics:低レベルのグラフィックス関数を提供。複数のグラフィックスオブジェクトで構成され、 オブジェクト指向の木構造になっている。各オブジェクトをハンドルと呼ぶ。
・LU分解:連立方程式の高速解法。Gaussの消去法よりも複雑に見えるが、同様に高速な解法。
・補間:何個かのデータを通る曲線を求める方法。最小二乗法
・スプライン補間:点列をなめらかに結ぶことにより曲線を構成
・回帰分析:回帰関数を用いたデータ解析。最小二乗法が基礎になる。
・Control System Toolbox:制御システム開発用ツールボックス
・Robust Control Toolbox:ロバスト制御用
・Optimization Toolbox:最適化手法用
・Fuzzy Logic Toolbox:ファジー理論用
・Neural Network Toolbox:ニューラルネットワーク研究用
・Simulink:モデリング、シミュレーション用のツール。MATLABとのインターフェースを持ち、連携可能。
・Stateflow:Simulinkと連携した、イベントドリブンシステムのモデリング、シミュレーション環境。
・Blocksets:Simulink用の汎用ライブラリ

-目次-
MATLABと行列計算
グラフィックス
線形代数計算の実例
プログラミング
数値計算プログラミングの実例
ヘルプ機能とツールボックス