%Esempio di aplicazione del teorema delle contrazioni sul piano
%con rappresentazione grafica tridimensionale del risultato a partire da diversi dati
%iniziali

toll=1e-6; ; %tolleranza nella ricerca del punto fisso
i=0;
A=[1/2, 1/4;-3/4, 1/8]; %matrice della trasformazione
B=[1;1];

figure
grid on;
%axis ([-10 10 -10 10]);

hold on

% I punti di partenza sono dati da una griglia
for m=-10:2:10;
    for l=-10:2:10
        x0=[m;l]; %punto di partenza
        punti=[x0]; %inserisci il punto di partenza
        %nell'insieme di tutti i punti di passaggio
        i=0;
        while norm(x0-A*x0-B)>toll
            i=i+1;
            x1=A*x0+B;
            x0=x1;
            punti=[punti x0]; %accoda il punto corrente
        end
        plot3(punti(1,:),punti(2,:),i:-1:0);
    end
end

