表示する画像の複素座標を、実軸はCXS~CXE,虚軸はCYS~CYEとする。
この表示座標領域をDと名づける。
座標領域Dの座標点(CX,CY)相当するPC画面上の点を(K,J)とすれば次の関係がある。
CX=CXS+DX*K ,CY=CYS+DY*J・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(1)
ここで、PCでの表示画面のピクセル数をKMAX,JMAXとすれば
CXE=CXS+DX*KMAX , CYE=CYS+DY*JMAX
より点(CX,CY)は、PC画面の点(K,J)に相互変換できる。
***
今後、CXS=-1.5,CXE=0.5,KMAX=JMAX=480,DY=DX,CYS=240*DYとする。
(この場合は、CYS=-1,CYE=1となる)
またN-loopの最大巡回回数をNMAXとする。
***
通常、Z^2+0.5マンデルブロ画像は以下のプログラムで作られる。
10 FOR J=0 TO 480
14 CY=CYS+DY*J
20 FOR K=0 TO 480
24 CX=CXS+DX*K
30 X=0:Y=0
40 FOR N=0 TO NMAX
50 XX=X^2-Y^2+CX
60 Y=2*X*Y+CY
70 X=XX
80 IF X^2+Y^2>4 THEN 110
90 NEXT N
100 GOTO 120
110 (色:C の設定条件)
110 PSET(K,J),C
120 NEXT K
130 NEXT J
140 END
***
さて、座標領域D内の点(CX,CY)が与えられれば、N-loop内の点(X,Y)が決定され上記プログラムに従って、点(X,Y)は複素平面座標を動き回る。ここで、座標領域Dの中心点を(X0,Y0)とすれば(-0.5,0)となる。
***
ここで、点(X,Y)と中心点(X0,Y0)との距離をRとすると、
R={(X-X0)^2+(Y-Y0)^2}^0.5={(X+1.5)^2+Y^2}^0.5・・・・・・・・・(2)
となる。
上のプログラムが実行されていったとき、Rはどのような挙動をするだろうか?
これが今回の記事のテーマである。
***
『注意すべきは、今考えている点(X,Y)は、N-loop内の点(X,Y)であって上記の初期値の点(CX,CY)ではない。(1)式参照』
***
点(X,Y)に相当するPCの表示座標を点(K1,Y1)とする。
ここで、X=CXS+DX*K1, Y=CYS+DY*J1・・・・・・・・・・・・・・・・・・・・・・(3)
とすれば、点(X,Y)の座標は、Dの座標と共通化でき、
K1=(X-CXS)/DX , J1=(Y-CYS)/DY・・・・・・・・・・・・・・・・・・・・・・・・・(4)
として、点(X,Y)と点(K1,J1)は相互変換できる。
***
従って、(2),(3)より
R={(DX*K1)^2+(CYS+DY*J1)^2}^0.5・・・・・・・・・・・・・・・・・・・・・・・(5)
***
下図は、CY(or J)を一定にしたときの、CX(or K)に対するR(中心点からの距離)の挙動である。ここで色:Cは、点(X,Y)のN-loopでのN値(Noとする)を表している。
C=No MOD 16 とする。下図においては、Nmax=15としているから、C=No となる。
***
下図の横軸は、(1)式のCX(-1.5→0)で、パラメータ:K(0→480)で表している。
下図の縦軸は、Rを表している。R=SQR((DX*K1)^2+(CYS+DY*J1)^2)・・・・(6)
点(X,Y)はN-loopを、X^2+Y^2>4を満足するまで巡回するが、その巡回回数を色Cで表している。巡回回数をNoとすると、C=No MOD 16 としている。
下図では、Nmax=15としているので、C=No となり、色を見ることにより何回目の巡回のRであるか分かる。
また、下図にマンデルブロ集合の概略境界線を描いているが、点(X,Y)と座標を共通化しているので、R が、マンデルブロ画像の何処に位置しているかが直接分かる。
***
下図は、CY即ちJを固定したときの、CX即ちKに対する挙動を示している。
下図の縦軸は300R(画面上方向がプラス方向)、横軸はK(0→480)でる。
また縦軸にCY即ちJの固定値を太い横線で表している。この太い横線が切れている箇所はマンデルブロ集合内であることを意味している。
------------------------------------------------
-----------------------------------------------
上図の場合、N-loopの入力点となる点(CX,CY)は画面の左から右へと移動していく。
その点がマンデルブロ集合領域に入ると、入って点を中心として上下(つまり虚軸)方向に振動していることが色から分かる。その振動はK即ちCXが右方向(増加方向)に移動するにつれて振動振幅が増加したり減少したりしながら変化している。その変化のしかたはJ即ちCYに大きく依存している。
***
上図の場合は、CX,CYの与え方が、座標表示領域:D において、左→右の変化を、上から下
へと変化させており、その変化のさせかたは不自然と言える。
おそらく自然な変化のしかたは、D の中心点から回転させながら回転半径を増加させていく方法だと思われる。(具体的には曲座標を使う方法である)。
***
いずれにせよ、R の変化の多様性は、マンデルブロ集合内にある(それ自体はあたりまえなことだが)。上図は、その一例であり、これはこれで面白い。
上図では、R の変化を分かりやすくするために、Nmax=15としたが、これを増加させたら、また新しい事柄が分かるかも知れない。