Il semble que la réponse à cette question devrait être simple, mais je suis perplexe. J'ai une matrice de matrice Nx3 où les 1er et 2ème colonnes sont les coordonnées X Y et Z du nième item. Je veux calculer la distance entre l'origine et l'objet. Dans une forme non vectorisée, c'est facile.Comment calculer la longueur euclidienne d'une matrice sans boucles?
distance = norme ([x y z]);
ou
distance = sqrt (x^2 + y^2 + z^2);
Cependant, sous forme vectorisée ce n'est pas si simple. Lorsque vous passez une matrice à la norme, elle ne renvoie plus la longueur euclidienne.
distance = norme (matrice); % Ne fonctionne pas
et
distance = sqrt (x (:., 1) * x (:, 1) + y (:., 2) * y (:, 2) + z (:, 3). * Z (:, 3)); % juste semble malpropre
Y a-t-il une meilleure façon de le faire?
Très élégant, en effet! =) – Phonon