%butterfly
clear;clc;
z=[-0.5,0.1];
dz=[1e-9,0];
z1=[0,0];
z2=[0,0];
z0=[0,0];
tz=[0,0];
%#dz
N=1e7;
%#二分
n=1e5;
sita=0:pi/20:2*pi;
plot(cos(sita)/3,sin(sita)/3);
hold all;
while(N>0)
N=N-1;
%edge
tz=z+dz;
if tz(1)>1/2
tz(1)=tz(1)-1;
elseif tz(1)<-1/2
tz(1)=tz(1)+1;
end
if tz(2)>1/2
tz(2)=tz(2)-1;
elseif tz(2)<-1/2
tz(2)=tz(2)+1;
end
%collapse
if(norm(3*z)>=1 && norm(3*tz)<1)
n=1e5;
z1=z;
z2=tz;
while(n>0)
n=n-1;
%do erfen
z0=(z1+z2)/2;
end
end
plot(z(1),z(2),'.');
end
xlim([-1/2,1/2]);
ylim([-1/2,1/2]);
December 2005 January 2006 February 2006 March 2006 April 2006