Condition sur les points randomisés
Bonjour,
ce code calcule la distance entre chaque point et le 19 autres points. Après l'exécution de ce code on obtient une matrice distance 20 Lignes et 20 colonnes des tous les points.
Ma question consiste à mettre une condition sur ces points randomisées c'est à dire si la déférence de distance entre deux points de matrice est inférieure 6 métres on doit répéter la randomisation des points jusqu’à ce que dans notre matrice la déférence de distance entre une colonne par exemple ne contient aucune valeur < 6 métres
Code:
1 2 3 4 5 6 7 8 9 10
| X = 200 * rand(1,20) - 100;
Y = 200 * rand(1,20) - 100;
distance=[];
for i=1:20
dist = sqrt((X(i)-X(:)).^2+(Y(i)-Y(:)).^2);
distance=[distance dist];
end |
Est ce qu'on peut savoir les coordonnées (X,Y) de chaque point randomisé ?
merci
Condition sur les points randomisés
Bonjour,
Une proposition :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| function d=dist(seuil)
XY= 200 * rand(2,20) - 100;
CX=nchoosek(XY(1,:),2);
CY=nchoosek(XY(2,:),2);
d=sqrt(diff(CX').^2+diff(CY').^2)';
if d > seuil
disp(['d > ' num2str(seuil)])
return
else
disp(['d < ' num2str(seuil)])
dist(seuil)
end |