Tracé de "fractales" et problème de mémoire(?)
Publié : jeu. juin 30, 2011 11:59 am
Bonjour,
Je voudrais implanter la fonction "coul" suivante, suivi du tracé correspondant (le but est de dessiner des "fractales" à partir de la méthode d'approximation de Newton):
coul(a,b):={
local z,j,c,n;
n:=3;
z:=a+i*b;
c:=0;
while((abs(z^n-1)>=0.01) and (c<20))
{z:=z-(z^n-1)/(n*z^(n-1));
c:=c+1};
return(c)
}:;
PUIS :
seq(seq(couleur(point([a*0.002,b*0.002]),coul(a*0.002,b*0.002)+point_point+point_width_2),a=-500..
500),b=-500..500)
Le problème est que lorsque je lance l'exécution, Xcas plante, car je pense qu'il n'y a pas assez de mémoire...
Y-a-il un moyen de résoudre le problème (peut-être en segmentant l'exécution, ou bien par l'intermédiaire d'un tableau qui retiendrait les couleurs calculées...?).Cela fonctionne si je réduis les intervalles sur lesquels on trace mais ça perd son intérêt...
Merci beaucoup!
Je voudrais implanter la fonction "coul" suivante, suivi du tracé correspondant (le but est de dessiner des "fractales" à partir de la méthode d'approximation de Newton):
coul(a,b):={
local z,j,c,n;
n:=3;
z:=a+i*b;
c:=0;
while((abs(z^n-1)>=0.01) and (c<20))
{z:=z-(z^n-1)/(n*z^(n-1));
c:=c+1};
return(c)
}:;
PUIS :
seq(seq(couleur(point([a*0.002,b*0.002]),coul(a*0.002,b*0.002)+point_point+point_width_2),a=-500..
500),b=-500..500)
Le problème est que lorsque je lance l'exécution, Xcas plante, car je pense qu'il n'y a pas assez de mémoire...
Y-a-il un moyen de résoudre le problème (peut-être en segmentant l'exécution, ou bien par l'intermédiaire d'un tableau qui retiendrait les couleurs calculées...?).Cela fonctionne si je réduis les intervalles sur lesquels on trace mais ça perd son intérêt...
Merci beaucoup!