[Scilab-users] Visualising Collatz sequences
Stéphane Mottelet
stephane.mottelet at utc.fr
Thu Apr 14 16:29:11 CEST 2022
You can also enjoy the 3d version:
function X=anglePath3(r, th, ph)
cumth = cumsum(th);
cumph = cumsum(ph);
X = cumsum([0 r.*sin(cumph)
0 r.*sin(cumth).*cos(cumph)
0 r.*cos(cumth).*cos(cumph)], 2);
end
function N=collatz(n)
N = n;
while n<>1
if modulo(n,2) == 0
n = n/2;
else
n = 3*n+1;
end
N = [n N];
end
end
a=0.1;
e=1.3;
clf
NCOL=512;
gcf().color_map=parulacolormap(NCOL);
drawlater
for i=1:200
r=collatz(grand(1,1,'uin',1,1000000));
m1=modulo(r,4);
m2=m1;
m1(m1>1)=0;
m2(m2<=1)=0;
X=anglePath3(r./(1+r.^e),a*%pi*(0.352-modulo(m1,2)),a*%pi*(0.352-modulo(m2,2)));
x=rand(3,1)/8;
param3d(x(1)+X(1,:),x(2)+X(2,:),x(3)+2*X(3,:))
gce().foreground=min(NCOL,length(r))
end
isoview on
drawnow
Le 14/04/2022 à 09:46, Stéphane Mottelet a écrit :
>
> Hi again,
>
> Here is a small code doing the graphic job:
>
> function X=anglePath(r, th)
> cumth = cumsum(th);
> X = cumsum([0 r.*cos(cumth);0 r.*sin(cumth)], 2);
> end
>
> function N=collatz(n)
> N = n;
> while n<>1
> if modulo(n,2) == 0
> n = n/2;
> else
> n = 3*n+1;
> end
> N = [n N];
> end
> end
>
> a=0.08;
> e=1.2;
>
> clf
> gcf().color_map=graycolormap(128);
> for i=1:100
> r=collatz(ceil(rand()*2000000000));
> X=anglePath(r./(1+r.^1.2),a*%pi*(0.35-modulo(r,2)));
> plot(0.01+X(1,:),-0.01+X(2,:));
> end
> --
> Stéphane Mottelet
> Ingénieur de recherche
> EA 4297 Transformations Intégrées de la Matière Renouvelable
> Département Génie des Procédés Industriels
> Sorbonne Universités - Université de Technologie de Compiègne
> CS 60319, 60203 Compiègne cedex
> Tel : +33(0)344234688
> http://www.utc.fr/~mottelet
>
> _______________________________________________
> users mailing list
> users at lists.scilab.org
> https://antispam.utc.fr/proxy/v3?i=Zk92VEFKaGQ4Ums4cnZEUWMTpfHaXFQGRw1_CnOoOH0&r=bHA1dGV3NWJQVUloaWNFUYH-0fCrCfKNwGzaHK3mGAF34Dbd5QpdXfVRjdiNrR7K&f=SlhDbE9uS2laS2JaZFpNWvypxfeihkZF7xphlFhpLfOsI1HEbZ2YCuIwSI8iQL53&u=http%3A//lists.scilab.org/mailman/listinfo/users&k=XRKU
--
Stéphane Mottelet
Ingénieur de recherche
EA 4297 Transformations Intégrées de la Matière Renouvelable
Département Génie des Procédés Industriels
Sorbonne Universités - Université de Technologie de Compiègne
CS 60319, 60203 Compiègne cedex
Tel : +33(0)344234688
http://www.utc.fr/~mottelet
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20220414/8a3e2a86/attachment.htm>
More information about the users
mailing list