MathematicalSoftwareAndFreeDocuments/09
13:00--14:00 | 「GotoBLAS入門」 | 木村欣司(京都大学) |
14:10--15:10 | 「たのしいYorick」 | 横田博史(東芝インフォメーションシステムズ) |
15:20--15:50 | 「Processingによる数理モデル教材作成とその事例」 | 田中勝(福岡大学) |
16:00--16:30 | 「openFrameworks等のライブラリを用いたアプリケーション開発」 | 石井政伸(山口大学) |
16:40--17:40 | 「Objective Camlがなぜバグを書かせないのか」 | Jacques Garrigue(名古屋大学) |
13:00--14:00 | 「GotoBLAS入門」 | 木村欣司(京都大学) |
GotoBLASの使い方を例題を通して紹介する。一つ目は、非線形固有値問題において、複素平面の指定した円の内部のすべての固有値を手に入れる方法を紹介し、その解法の中でGotoBLASがどのような役割に担う存在なのか、密行列と疎行列の場合に分けて解説する。そして、その手法の応用として、非線形連立代数方程式の例題として有名なcyclic-6,7を、いままでとは、まったく異なる方法で解く方法を紹介する。二つ目は、密な整数行列の固有多項式を、数式処理の意味で、高速に計算するアルゴリズムを紹介する。その中で、GotoBLASの性能が、その計算法の高速性の根拠となっていることを示す。特に、数式処理、すなわち、無誤差で計算する世界において、浮動小数点数を扱うライブラリであるGotoBLASが、有効に活用されるという面白い事例である。
14:10--15:10 | 「たのしいYorick」 | 横田博史(東芝インフォメーションシステムズ) |
YorickはC風の構文を持ち, MATLAB流儀の多次元の数値配列の処理が行える言語である。 Yorickは軽量な言語で, 他のMATLAB風の言語, 例えば, OctaveやScilabと比べて処理が高速であるが, 2次元や3次元のグラフやアニメーションも出来る. この講演はYorickへの簡単な入門である. もはやYorickは「哀れなYorick」ではない。
15:20--15:50 | 「Processingによる数理モデル教材作成とその事例」 | 田中勝(福岡大学) |
アーティスト向けにJavaをベースに開発されたProcessingは可視化ツールとしてもよくできており,オブジェクト指向的なプログラミングをサポートしているばかりではなくBASIC言語のようにも使うことができます.もちろんJavaとの親和性も高く,プルダウンメニューやボタン類の追加などJava同様にできます.今回は,このProcessingを用いて実際に「数理モデル」の授業で使用した教材を元に,教材作成の容易さとその事例について紹介します.特に,プログラミング経験の無い学生にブロック崩しゲームを作らせて遊ばせたところ,自分にもゲームのプログラムが組めたということで非常に好評でした.
16:00--16:30 | 「openFrameworks等のライブラリを用いたアプリケーション開発」 | 石井政伸(山口大学) |
ProcessingのC++版とも言えるフレームワークがopenFrameworksである. ウィンドウの作成等に気を使う事無く, また, 用意された描画コマンド類の簡便さからアルゴリズムの記述に専念出来るというメリットをProcessingから引き継ぎ, VMを挟むJavaベースのProcessingのデメリットである実行速度も改善されている. 今回は, そんなopenFrameworks(通称oF)の紹介をしようと思います.
16:40--17:40 | 「Objective Camlがなぜバグを書かせないのか」 | Jacques Garrigue(名古屋大学) |
Objective Camlは関数型プログラミング言語の一つだが,コンパイラおよび処理系が高速で,利用者が多くなって来た.その最大の利点は,先進的な型システムによって,型を明示的に書かなくても,型推論の段階でほとんどのバグが見付かるということである.コンパイラがバグを全て見付けるということ自体は理論的に不可能なのに,その効果がどこから来ているかを説明し,プログラムの安全な書き方に導いていく.