スタートページ>
Javscript>
モアレ、カオス、フラクタル
マンデルブロ集合
マンデルブロ集合
次の複素数の漸化式があります。
Zn+1 = Zn2 + (x + yi);
Z0 = 0;
この漸化式を、実数部をR、虚数部をIとすれば、次のようになります。
R0=0; I0;
Rn+1=Rn2 - In2 + x;
In+1=2RnIn + y;
n = k のときに、Zの絶対値>2(R2+I2 >4)となったら、この漸化式は発散することが知られています。それで点(x,y)にkに対応した色を塗って(x,y)の処理を打ち切ります。
適当な回数 n まで達してもZの絶対値>2にならない点(x,y)の集合(図では黒い部分)をマンデンブロ集合といいます。
- パターン1
- 上の漸化式を一般化して、Z0 = a + bi; としました。
-
- パターン2
- 漸化式を、次のように変更しました
Zn+1=Zn(Zn-1) + (x + yi);
Z0 = a + bi;
実数部、虚数部は次のようになります。
Rn+1=(Rn2 - In2 - Rn) + x;
In+1=(2RnIn - In) + y;
実験
値を少し変えるだけで、多様なデザインの図形になります。
- ptn=1. a=0, b=0 及び ptn=2. a=0, b=0 が基本形です。
a,b を少し変えるだけで、かなり変わった図形になります。
- nを大きくすると、細密になりますが時間がかかります。100以上にしてもあまり変化はありません。
n=5, 10, 20 にように変化させると、次第に(真の)マンデンブロ集合に近づくことがわかります。
- 標準では -2
xmin=-2, xmax=-1. ymin=-0.5, ymax= 9.5 とすれば、左側部分の拡大図になります。
- c0 を rgb(255,255,255) とすると、マンデンブロ集合は白抜きになります。
c1~c6 を変えることにより、趣味に応じた配色になります。
似たような図形にジュリア集合があります。