マンデルブロ集合

reso


計算解像度

~概要~

昔流行ったマンデルブロ集合をjavascriptで描いたもの

少年時代に理解できなかったことの続きであり、ノスタルジックに浸る癒しの時間


~操作~

マウスドラッグで移動

ホイール操作で拡大縮小


~アルゴリズム~

マンデルブロ集合とは、半径2の複素平面において、Zn+1 = Zn^2 + c / Z0=0 であらわされ

n→∞に変化させたとき発散しない点cの集合のこと

複素数を使わず、Znを(Xn,Yn)に、点cを(a,b)で置き換えると

Xn+1 = Xn^2 - Yn^2 + a , Yn+1= 2*XnYn + b


~プログラム~

x = X*X - Y*Y + a; y = 2*X*Y + b; X = x; Y = y;

この式を、-2~+2までのxy平面上の各座標(a,b)について、

初期値X=a,Y=b、∞回(計算解像度回)ループさせ、

入力座標の最大値-2または2を超えるものは発散とみなし、残りを適当に色付描画。