[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bfree-prj 78] Mandelbrot set on frtm



浪花です.

frtm でマンデルブロート集合を表示するワードを作りました.いわゆる
フラクタルです.

: dot dup 100 > if drop 0 else 15 % 1+ endif setcolor 4 ndrop 
    over 340 - minus over 220 + swap 1 1 rectf ;
: check 100 > if drop drop 1 else dup * swap dup * + 4000000 > endif ;
: nextr dup * 1000 / swap dup * 1000 / - 5 ndup + ;
: nexti * 500 / 7 ndup + ;
: next 1+ rotr 2 copy nextr 4 nrotr 2 copy nexti 5 nrotr drop drop ;
: point do 3 copy check if dot 0 else next 1 endif while ;
: mandel 201 0 for I 201 0 for I 
    over 100 - 10 * over 200 - 10 * 0 0 0 point drop loop drop loop ;

実行は

gm mandel
tm

としてください.かなり遅いですが (^^;).

画面のサンプルが
  http://www.scr.mech.yamaguchi-u.ac.jp/~naniwa/comp/bfree/mandelbrot.html
にあります.

計算の内容は,次の複素関数の漸化式の発散・収束を判定し,その結果を
図示しています.
  f(z) = z^2 + C
  z_{n+1} = f(z_n)
ここで,漸化式の初期値を 0 とし,C の実部を -2 〜 0,虚部 -1 〜 1 
の範囲で変化させています.100 回の繰り返しの間に絶対値が 2 を越し
たものは発散したものと判定します.

閑話休題

当然ながら私の手元には b-free-pc.0.0.40+frtm+unofficial patch した 
2nd boot 用の btron イメージのバイナリー・ファイルがあるんですが,
  1) このバイナリー・ファイルを個人的に公開しても良いか?
  2) 需要と公開する効果があるか?
という点で疑問があります (^^;).

1st boot 用のバイナリーもあわせて公開して FD boot 用のバイナリー・
イメージはダウンロードできるようにするにしても,init にたどり着く
には POSIX ファイルシステム FD が作れないといけない(ですよね?)ので,
結局 Linux で B-Free のコンパイルができるユーザーでないと試せない
のじゃないかという気がしているんですが.

私は概ね http://www.tron-net.gr.jp/B-Free/technical/make.html に従っ
て作業しましたが,ディレクトリの構造など変更されている部分がありま
すね.

---
(putprop '浪花 智英
    'affiliation  '(山口大学大学院 理工学研究科 環境共生工学専攻)
    'e-mail	  '(naniwa@mechgw.mech.yamaguchi-u.ac.jp)
    'URL  '(http://www.scr.mech.yamaguchi-u.ac.jp/staff/naniwa.html))