この講義では、前学期の計算天文学 I の内容からもう少し発展した課題を扱 う。具体的には、一応以下のような内容をカバーしたいというつもりである。
週1の講義で本当にこれだけの内容を全部カバーするのはだい ぶ大変なので、まあ、ぼちぼちいきましょう。
計算天文学 I では言語として Fortran を使ったことと思う。 Fortran は 1950年代に最初の版(Fortran I)が開発された極めて古い言語(実際上、最初 の計算機言語)であるが、Fortran 66, Fortran 77, Fortran 95 と3度に渡る 大きな仕様改訂(拡張)を経て、現在でも計算科学の広い分野で使われている。 特に、
が、それでは、 Fortran だけ使っていればいいかというと、最近はそれでは すまなくなってきている。これにはまたいろいろな理由があるが、端的には、 天文の世界でも、新しく書かれるプログラムにはほとんどの場合 C++ が使わ れるようになってきているからである。
C++ は、C言語をベースに1980年代にベル研で開発された比較的新しい言語で ある。C言語自体は、やはりベル研で1970年代に開発されたものであり、当初 は UNIX オペレーティングシステムの記述言語として普及した。さらに、1980 年代にはいってパーソナルコンピュータが普及すると、その OS (CP/M, MS-DOS, Windows)の上での主なプログラム開発言語として揺るぎない地位をし めるようになった。
そうなったのはどうしてかというのは、どうもよくわからないところもなくは ない。当時から C はあまり評判の良くない言語であり、それは C++ になって もあまり変わっていないからである。もっとも、どう評判が悪いかというのを 細かく見ていくと、結局、広くなんにでも使え、しかも計算機の能力を十分発 揮できるように作られているために、あまり見た目が良くないというのが大き い。見た目のわかりやすさというのは本当は重要だが、だからといってこの講 義であまり広く使われていない言語を使うというわけにもいかない。
C++ は、本当は C の上に「オブジェクト指向」というなんだか難しい理念を 実現するための言語だが、この講義ではそういうところにはあまり触れないで、 必要に応じて使っていくということにしたい。
http://grape.astron.s.u-tokyo.ac.jp/~makino/kougi/keisan_tenmongakuII/overall.htmlにシラバス、配布資料があるので必要に応じて見ること。
ええと、C++ 自体の参考書はあまりに沢山あるのではっきりいってなにがいい のか僕にも良くわからない。 Web 上だと、とりあえず理物の院生の渡辺尚貴 さんの作っているページ
http://www-cms.phys.s.u-tokyo.ac.jp/~naoki/CIPINTRO/あたりから見ていくのがいいと思う。
なお、 C++ の文法等自体についてはあんまりちゃんとは説明しないので、そ のつもりで。
問題に応じた参考書は別に指定していく。
レポート である。一応、来週以降は毎週課題を出すということにする。で、 原則として次の週には提出してもらう。いうまでもないが、全部提出しなけれ ば単位はつかない。
一応計算機の講義なので、手書きのレポートというのもちょっとそぐわないで あろう。したがって、Latex で書いて PS ファイルにしたものか、または HTML で出すということにする。 PS ファイル(あるいは pdf ファイル)になっ ていればどうしても Latex で作らないといけないということはないが、将来 のことを考えるとあまり Word とかそういうものではやらないほうがいいと思 う。
HTML で作りたい人は、自分ホームの下にどこかディレクトリをつくってそこ に置いておくこと。で、メイルで
makino@ed00.astron.s.u-tokyo.ac.jp
あてに、 Subject を、今日のものなら 「Report 10/12」として送ること。PS ファイルとかの場合でもこの方法でも構わない。
基本的には、始めに少し説明して、あとは適当に計算機室で課題等をやっても らうということにする。説明は講義室を使うか、計算機室を使うかはちょっと 人数等を見て決めたい。