générer des points aléatoires dans les 2/3 externe d'un cercle
Bonjour,
Je veux générer des points aléatoires dans les 2/3 externe d'un cercle (mon cercle est de rayon 600 c'est à dire que je veux des points aléatoires d’abscisses entre 400 et 600 ou entre -400 et -600 et d'ordonnées entre 400 et 600 ou entre -400 et -600)
le centre de mon cercle a les coordonnées (0,0)
Ce code génére des points aléatoires dans tout le cercle, mais je veux bien des points dans les 2/3 externe,Qui peut m'aider, merci
Code:
1 2 3
|
point=rand(2,5);
P=600*[point(1,:).*cos(2*pi*point(2,:));point(1,:).*sin(2*pi*point(2,:))] |
Points distribués de façon aléatoire uniforme à l'intérieur d'un cercle
Si des points sont distribués de façon aléatoire uniforme à l'intérieur d'un cercle la distribution des rayons de ces points n'est pas uniforme.
Pour générer des rayons de points distribués de façon uniforme dans une couronne délimitée entre les rayons a et b il ne faut pas écrire :
r=a+x(b-a)
mais :
r=sqrt((b^2-a^2)x+a^2)
x étant la variable aléatoire uniforme sur ]0,1[ (ici : rand).
Donc la ligne 2 du programme de Dut est inexacte.