PCが描く奇妙な画像集(数学的万華鏡と生物形態等の世界)

・インタープリタBASICによるフラクタルとカオスの奇妙な画集。

445 巡回式:Z←N(Z,λ):N(Z,λ)=λG(Z)-1/((λF(Z))画像(その1)

2014-08-15 07:25:09 | 再帰式合成関数画像
λ、Zを複素数とし、λ=LR+iLI , Z=X+iYとする。
今、任意の複素関数:F(Z)及びG(Z)とする。
ここで複素関数: N(Z,λ)=λG(Z)-1/(λ)F(Z)) とする。
ここで、巡回式:Z←N(Z,λ)を考える。

Zの初期値をZ0とする。最大巡回回数をNmaxとする。
この巡回式で、X^2+Y^2>T(実定数)のとき、巡回ループを抜け出すとする。

今、λの複素平面領域:LRS<=LR<=LRE,LIS<=LI<=LIE の各点において、Z←N(Z,λ)を実行する。此のループを貫通した場合、該当点を黄色とする。ループを抜け出した時の巡回回数をNoとして、其の該当点を以下の色とする。C=No mod 16,C=7→8,6→5。

またdLR=(LRE-LRS)/640,dLI=dLR,LIS=-240*dLI,LIE=240*dLIとする。

***

下図は以下のF(Z),G(Z)の画像である。

F(Z)=sinZ
G(Z)=sinZ, cosZ, tanZ, sinhZ, coshZ, sinsinZ, cossinZ, e^sinZ,
e^tanZ, e^sinhZ, e^coshZ
***
また各関数:F(Z),G(Z)画像において、色CをC→15-C(但し、C=7→2)に変えた画像も
添付している。
***
各画像の作成条件は画像の上に書いてある。

--------------------------------------




--------------------------------------




--------------------------------------




--------------------------------------




------------------------------------




-----------------------------------




-----------------------------------




---------------------------------




----------------------------------




---------------------------------




--------------------------------




-------------------------------------------------
F(Z)=sinZ, G(Z)=sinZ の場合のBASIC/98のプログラムを以下に示す。
 
10 REM N(Z,λ)=λG(Z)-1/λF(Z)=NR+iNI
11 REM G(Z)=GR+IGI, F(Z)=FR+IFI:行211,212で与える。
12 REM λ=LR+iLI
20 REM 横軸(K):640 dots、縦軸(J):480 dots
21 CHAIN MERGE "C:\BASIC1\PRO\SUBR\KOSHIKI.BAS",30,ALL
30 CHAIN MERGE "C:\BASIC1\PRO\SUBR\ER1.BAS",40,ALL
40 ON ERROR GOTO 50000
50 CONSOLE ,,0,1
60 COLOR 0,7,,,2
70 CLS 3
71 GOSUB 10000
80 OPEN "C:\BASIC1\RUN\DATA.DAT" FOR OUTPUT AS #1
90 OPEN "C:\BASIC1\RUN\親DATA.DAT" FOR OUTPUT AS #2
100 REM 親DATAの設定(随時変更)
110 LRS=-P :LRE=P
120 DR=(LRE-LRS)/640 :DI=DR:LIS=-240*DI:LIE=-LIS
130 WRITE #2,LRS,LRE,LIS,LIE,DR,DI
140 CLOSE #2
150 FOR J=0 TO 480
160 LOCATE 0,0:PRINT J
170 LI=LIS+DI*J
180 FOR K=0 TO 640
190 X=0.5 :Y=0
200 LR=LRS+DR*K
210 FOR N=0 TO 15
211 GR=FNSINR(X,Y) :GI=FNSINI(X,Y)
220 FR=FNSINR(X,Y): FI=FNSINI(X,Y)
230 A1=LR*FR-LI*FI
240 A2=LI*FR+LR+FI
250 A33=A1^2+A2^2
260 IF A33=0 THEN 400
261 A3=1/A33
270 A4=FR*GR-FI*GI
280 A5=FI*GR+FR*GI
290 NR=A4-A3*A1
300 NI=A5-A3*A2
350 X=NR
360 Y=NI
370 Q=X^2+Y^2
380 '
390 IF Q>50 THEN 420
400 NEXT N
410 C=6:GOTO 460
420 '発散時のPSET
430 C=N MOD 16
440 IF C=7 THEN C=8
450 IF C=6 THEN C=5
460 PSET (K,J),C
470 WRITE #1,K,J,C,N
480 NEXT K
490 NEXT J
500 END


最新の画像もっと見る