Demonstoration

ここでは、1999/10/9に開催されたオープンキャンパスでおこなった、いくつかのデモンストレーションを紹介します。


結晶成長のシミュレーション | CG|熱伝導

結晶成長のシミュレーション

これは酸に溶かした亜鉛を電気分解によって析出させた結晶です。雪の結晶と同じような形をしていますね。この結晶成長の様子をコンピュータという仮想空間でシミュレーションしてみましょう。

これからおこなうシミュレーションは非常に簡単なものです。

シミュレーションの手順は以下の通りです。

  1. まず、中心に核となる粒子を置きます。
  2. この核の周りには複数の粒子をおきます。
  3. これらの粒子はブラウン運動しています。
  4. この不規則に運動する粒子が核に接触すると、そこに固定され動かなくなります。

コンピュータでやっていることは、これだけです。分子の不規則な運動はコンピュータに乱数を発生させ、その乱数をもとに上下左右に運動するようにしています。それではシミュレーションの結果を見てみましょう。

下図にシミュレーションの結果を示しますが、時間が経過するにつれ結晶が少しずつ成長していきます。緑色の粒子はブラウン運動をしているもの。白い粒子は核に接触しブラウン運動をやめた粒子です。上の写真と同じような形になっていますね。

ソースファイル(mpich,g77,pgplotが必要です)

コンピュータグラフィックス(CG)

POV-Rayについて

POV-RayはDavid K. Buck氏が作成した「DKBTrace」いうレイトレーサを元に、世界中のボランティアプログラマ達によって開発がすすめられている3次元CGソフトウェアです(現在のチームコーディネータはChis Young氏です)。POV-Rayはレイトレーシング法と呼ばれる手法によって写真のようにリアルなCG画像を作り出します。三次元CGでは、画像をコンピュータが計算によって作り出しますが、その計算方法にはいくつかの方法があり、レイトレーシング法もその1つです。ほかに代表的なものに、Zバッファ法やスキャンライン法といったものがありますが、それらの中でも最も高度で複雑な高品質な画像を作り出せるの方法がレイトレーシング法です。

レイトレーシング法とは、「光線がどのように屈折、反射するのか、ある物質にぶつかったときどのような影響を受けるのか」といったことを光線を追跡しながらその都度計算し、これを繰り返すことによって色や光の強さなどを決定して画像をつくりだしています。光源から出た光のふるまいを追跡しながら画像を作り出すレイトレーシング法のしくみは、私たちの目に光りに照らされた物体の像が写るのと同じしくみです。現実の光源と物体と目の間で行われるやりとりを、コンピュータが計算によってシミュレーションする方法だといえます。したがって、光線に関する挙動を逐次計算によって算出していかなければならいなため、1枚の画像を完成させるまでに膨大な計算が必要となります。

XPVMPOVについて

POV-Rayはさまざまなプラットフォームで動作します(Windows, MacOS, MS-DOS, Linux, SunOS, Amiga etc)。このPOV-RayをPVMを用いて並列処理できるようにしたものがXPVMPOVです。ではこのXPVMPOVを用いて、並列計算機のありがたみを実感してみましょう。ここではPOV-Rayに付属するサンプルファイル(arches.pov)を使用して計算してみましょう。