![]() |
|
bacini di attrazione
Nel seguito useremo le immagini a falsi colori per visualizzare i bacini di attrazione di vari algoritmi iterativi.
In questo modo si generano parecchie immagini suggestive, come quelle dei frattali di Mandelbrot o di Julia.
Iniziamo con un caso relativamente semplice, sul piano complesso.
Se si prende un punto z non nullo, e si itera il calcolo di (z+1/z)/2 , per punti z non immaginari puri si finsice per cadere su +1 o -1.
Si può costruire una funzione di octave/matlab [s,n]=segno[z,maxiter, epsilon) che, partendo da z, itera il procedimento
fino ad un massimo di maxiter volte, o fino a quando due iterazioni forniscono due numeri complessi più vicini di epsilon, e
restituisce il numero complesso s ottenuto e il numero di iterazioni n effettivamente fatte.
Preso epsilon=1,0e-8 e maxiter=20, si possono studiare i punti nel rettangolo tra -5-5i e 5+5i, e vedere per ciascuno di essi quante
iterazioni occorre fare per arrivare a +1 o -1.
Tali numeri vanno da 1 a maxiter. Possiamo rappresentarli con un colore.
In pratica non possiamo prendere tutti i punti, ma possiamo prendere un reticolo piu' o meno fitto.
Per fare ciò costruiamo una funzione [x,y,iter]=bsegno(a,b,c,d,numpoints,maxiter,epsilon)
che prende il rettangolo del piano [a,b]x[c,d], ne suddivide i lati in numpoints, mi restituisce in x e y i
vettori dei punti del reticolo presi in [a,b] e [c,d] rispettivamente, e per ogni punto del reticolo (i,j)
prende il numero complesso corrispondente e ne fa le iterazioni chiamando la funzione segno, e riporta in
iter(i,j) il numero di iterazioni fatto.
A questo punto imagesc(x,y,iter) rappresenta in falsi colori la matrice delle iterazioni e ci dice quali
punti del piano sono più o meno attratti dai due punti 1 e -1.
![]() |
|