Questa è la pag. 7 Come elevare da Z^2 fino a Z^26 con poche righe di programma in più.

Questo sotto è il listato di un programma in VBasic è un poco più lungo di quello che puoi trovare a pagina 13 ma in compenso ti permette di elevare un numero complesso fino alla 26ª potenza.

Mandelbrot:- DA Z^2 FINO A Z^26



mandel alla 2 mandel alla 3 mandel alla 4







- La prima immagine qui sopra a sinistra, è ottenuta utilizzando la normale formula (Z^2 + c)
La seconda con Z^3, la terza con Z^4.

Questo sotto è il programma in VBasic che ti permette di realizzare un insiememe di Mandelbrot con Z elevata alla 26ª potenza. Private Sub Form1_Click()
'*****    INSIEME DI MANDELBROT ELEVATO A N    *****
Dim ingrandimenti, puntoinizioreale, puntoinizioimmaginario, nc, distanza, p, b:'
Dim zr, zy, c, nx, ny, zxy, colore, sdr, sdi, puntoinizior, puntoinizioi: '
Dim zr2, zi2, q, np, nb, n
' CAMBIANDO IL VALORE DI n   OTTIENI UN INSIEME DI MANDELBROT CON Z^n
n = 3: '(0) (n corrisponde alla potenza di Z) CON VALORI DI n SUPERIORI 24 L'INSIEME DI MANDELBROT SEMBRA IN UN CERCHIO SEGHETTATO
'CON VALORI SUPERIORI A 26 IL MIO COMPUTER VA IN OVERFLOW
ingrandimenti = 1: '(1 )
puntoinizioreale = -1.55: '(2)
puntoinizioimmaginario = 1.35: '(3)
nc = 60: '(4)
distanza = 2.5 / 165 / ingrandimenti: '(5)
p = 1: '(6)
While p <= 200: '(7)
sdr = sdr + distanza: '(8)
b = 1: '(9)
sdi = 0: '(10)
While b <= 200: '(11)
sdi = sdi + distanza: '(12)
puntor = puntoinizioreale + sdr: '(13)
puntoi = puntoinizioimmaginario - sdi: '(14)
zr = 0: '(15)
zi = 0: '(16)
zr2 = 0: '(16b)
zi2 = 0: '(16c)
c = 0: '(17)
Do: '(18)
c = c + 1: '(19)
np = zr * zr: '(19b)
nb = zi * zi: '(19c)
For q = 1 To (n - 1): '(19d)
nx = zr * zr2 - zi * zi2: '(20)
ny = zr * zi2 + zr2 * zi: '(21)
zr = nx: '(22)
zi = ny: '(23)
Next: '(23b)
zr = nx + puntor: '(23c)
zi = ny + puntoi: '(23d)
zr2 = nx + puntor: '(23e)
zi2 = ny + puntoi: '(23f)
zxy = np + nb: '(24)
Loop Until (zxy > 8) Or (c > nc): '(25)
If zxy > 8 Then colore = c * 3356 Else colore = 0: '(26)
Picture1.PSet (p, b), colore: '(27)
b = b + 1: '(28)
Wend: '(29)
p = p + 1: '(30)
Wend: '(31)
End Sub:'(32)

Le righe di programma che hanno il numero di riga, seguito da una lettera sono quelle aggiunte al listato del programma che trovi a pagina 13.





mandel alla 5 mandel alla 6 mandelalla 7











Queste sopra, partendo da sinistra sono immagini dell'insieme di M.
elevate alla 5, alla 6, e alla 7.

mandel alla 11 mandel alla 26


Queste a lato, partendo da sinistra
sono immagini dell'insieme di M.
elevate alla 11, e alla 26.





COME FAR EMERGERE i PARTICOLARI



drago normale drago dopo 130 cicli

















Piccolo suggerimento.
Alcune volte c'è la necessità d far risaltare alcuni particolari dell'immagine, normalmente questi particolari sono quelli che emergono dopo aver eseguito numerosi cicli di programma, perciò per renderli più visibili, basta colorare di nero tutti i punti che non hanno raggiunto un determinato numero di cicli.
L'immagine sopra a destra ha colorato di nero tutti i punti che non superavano i 130 cili, mentre quella a sinistra è stata colorata normalmente

La stessa cosa per l'immagine sotto a destra, che è stata colorata solo nei punti in cui il ciclo era stato reiterato più di 350 cicli, mentre quella a sinistra, è l'immmagine normale.

Per ottenere ciò basta sostituire la riga di programma n. 26 con questa sotto.

If c > 200 And zxy > 4 Then colore = c * 3356 Else colore = 0: '(26)

Naturalmente il numero 200 lo sostituirete con il numero che voi sceglierete in base alla vostra immagine.


farfalla normale farfalla dopo 350 cilcli



La prossima pagina mostra alcune immagini dell'insieme di Mandelbrot in 3D
pag. 8 Mandelbrot in pseudo 3d





MENU DEGLI APPLET.

****************************************

CLICCA QUI PER INTERAGIRE CON UN APPLET SULL'INSIEME DI MANDELBROT.


CLICCA QUI se vuoi interagire con un semplice applet sugli insieme di MANDELBROT, con la formula elevata a varie potenze.




Torna alla home page Menu di Matematica. Menu della grafica frattale. Menu dei proverbi bergamaschi.