Homeに戻る  一覧に戻る 

The Mandelbrot Set


Mandelbrot図形[2004.06.27]

良く知られたFractal図形の1つであるMandelbrot図形 Mは、以下のように定義される。

     M = {c ∈ C : lim supn→∞|fcn(0)| < ∞}
ここで、
     fc(z) = z2+c,
     fc0(z) = 0,
     fcn+1(z) = fc(fcn(z)) if n >= 0
である。

また、中心0、半径2の円盤を
     D = { z ∈ C : |z| <= 2 }
とすると、
     M ⊆ D
である。よって、Mは有界である。

Mandelbrot図形を描画するソフトウェアであるXaoS-3.1をNetBSD-1.6.2/i386上でbuildした。
Buildの手順は、以下の通りである。
  1. XaoS-3.1.tar.gzを展開する。
    $ tar zxf XaoS-3.1.tar,gz
    
  2. INSTALLを読む。
    $ cd XaoS-3.1
    $ cat ./doc/INSTALL
    
  3. configureする。
    $ CFLAGS="-m486 -O2" ./configure
    
  4. ./src/Makefileを編集する。変数LIBSに-lintlを追加する。
    $ cd src
    $ mule -nw Makefile
    $ diff Makefile Makefile~
    3c3
    < LIBS   = -lz -lm  -lintl -lXext   -L/usr/X11R6/lib -lX11 
    ---
    > LIBS   = -lz -lm  -lXext   -L/usr/X11R6/lib -lX11 
    
  5. makeする。GNU makeを使った方が良い。
    $ gmake
    
  6. make installする。
    $ su
    # gmake install
    # exit
    
  7. make cleanする。
    $ gmake clean
    

描画した画像をpng形式で保存できるようにするには、さらに少しの作業が必要である。

XaoSを起動するには、XFree86のkterm上で、xaosとすれば良い。

XaoSの初期画面では、中央の黒く表示される部分がMandelbrot図形である。

マウスカーソルを図形上に置いて、左ボタンをクリックすると、その点を中心に拡大表示し、右ボタンをクリックすると、縮小表示する。

拡大率を上げた状態でも詳細に図形を表示するには、マウスカーソルをウインドウ上部に移動して、メニューから[Calculation]→[Iteration]を選択する。 Iterationパラメータをデフォルトの170から大きな数(例えば、100000)に変更すると良い。
ただし、Iterationパラメータを大きくすると、計算時間が掛かるようになる。
例えば、ある場所を適当に拡大すると、このようになる。 また、別の場所を拡大すると、このようになる。


参考文献



Last Update: 2005.07.16
H.Nakao

Homeに戻る[Homeに戻る]  一覧に戻る[一覧2004に戻る]