Calcul distance entre points & matrice matlab

Fermé
roudoudounette - 12 nov. 2009 à 17:47
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 - 12 nov. 2009 à 22:06
Bonjour,

Je dispose de 13 points possédant chacun des coordonnées (x,y). Je souhaiterais créer une matrice de 13 sur 13 représentant l'inter-distance entre chacun de ces points.
Etant donné que je débute sur Matlab, quelqu'un peut-il me donner un petit coup de pouce?
Merci beaucoup,
A bientôt
A voir également:

1 réponse

Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 661
12 nov. 2009 à 22:06
bon alors naturellement, à la case i,j de ta matrice tu mettras la distance entre le ième vecteur et le jème vecteur. Donc tu as tes vecteurs à la suite dans une matrice V.

V = [v1 v2 v3 ... v13] un truc du genre (ou avec des points virgules, selon si tu as des vecteurs ligne ou colonne.)

Ensuite pour remplir ta matrice, on va faire une méthode basique (peut-être pas très optimisée) :

une boucle sur i et une boucle sur j avec des "for".
(je ne suis plus sûr de la syntaxe de for là tout de suite, vérifie dans l'aide ou dans ton cours!)

Distances=zeros(13); %initialisation de la matrice

for i=[1:13] do
  for  j=[1:13] do
    %ici pour chaque couple i et j on calcule la distance entre le vecteur i et le j
    %selon si tes vecteurs sont les lignes de M ou les colonnes de M il faut peut-être inverser les i j et les :
    Distances(i,j) = norm(V(i,:)-V(j,:));
  end do
end do



comme je l'ai dit j'ai un trou au niveau du for, vérifie la syntaxe.
1