Aller au contenu principal
CalcMax

Calculatrice d’angle entre deux vecteurs

Résultat

60,0000 °

Angle entre les vecteurs

Cosinus de l’angle
0,5000
Angle en radians
1,0472

Une calculatrice d’angle entre deux vecteurs prend deux vecteurs et renvoie l’angle qu’ils forment, accompagné du cosinus dont cet angle provient et du même angle en radians. Saisissez les composantes de chaque vecteur séparées par des espaces ou des virgules — 1 1 0 pour un vecteur à trois dimensions, 0 3 pour un vecteur à deux dimensions — et la page fait le reste. Les deux vecteurs doivent avoir le même nombre de composantes, mais il n’y a aucune autre limite sur ce nombre, et les composantes négatives sont acceptées. L’arithmétique qui mène à la réponse est courte. Multipliez les deux premières composantes entre elles, les deux deuxièmes, et ainsi de suite, puis additionnez les produits : c’est le produit scalaire. Prenez la norme de chaque vecteur, qui est la racine carrée de la somme des carrés de ses composantes. Divisez le produit scalaire par le produit des deux normes et vous tenez le cosinus de l’angle. L’angle lui-même est l’arc cosinus de ce nombre. Passer par le cosinus plutôt que par l’angle directement est toute l’astuce, parce que le cosinus est ce que le produit scalaire produit naturellement, et c’est aussi le nombre qui mérite d’être regardé : il va de 1 pour deux vecteurs de même sens, passe par 0 à angle droit, et descend à −1 pour deux vecteurs de sens opposés. Ces trois valeurs sont les seules que les gens reconnaissent réellement, et aucune ne demande de calculatrice pour être repérée. Les vecteurs perpendiculaires, le cas pour lequel la page est le plus souvent ouverte, sont ceux dont le cosinus vaut exactement zéro. Tout le reste tombe entre les deux, et la page le donne à quatre décimales en degrés et en radians à la fois, puisque la moitié des formules du monde réclament le second et que la plupart des gens lisent le premier. Une seule entrée est refusée plutôt que calculée : le vecteur nul, dont la norme est nulle et qui n’a donc aucune direction. Diviser par sa norme pour obtenir un cosinus reviendrait à diviser par zéro, et renvoyer un angle de zéro reviendrait à affirmer qu’il pointe dans le même sens que votre vecteur, la page décline donc tout le calcul.

Couples de vecteurs et l’angle entre eux

Vecteur uVecteur vCosinus de l’angleAngle (en degrés)
1 1 01 0 10.560
1 00 1090
1 0 01 0 010
-1 0 01 0 0-1180
1 11 00.707145
3 4 04 3 00.9616.2602
1 2 22 2 10.888927.266
2 -34 5-0.3032107.6501

Huit couples, et la première ligne est celle avec laquelle la page se charge. La colonne du cosinus est tout l’intérêt du tableau : la colonne d’angle seule cache la régularité, et avec le cosinus à côté d’elle les trois valeurs particulières sautent aux yeux immédiatement. La première ligne est un cosinus de exactement 0,5 donnant exactement 60 degrés, et la sixième est un cosinus de 0,96 donnant 16,26 degrés — entre ces deux lignes tient tout l’avertissement de cette page, à savoir que le cosinus comprime l’intervalle de 0 à 90 degrés dans celui de 1 à 0 et qu’il le comprime de façon inégale. La deuxième ligne est l’angle droit le plus simple qui soit et la troisième est un vecteur confronté à lui-même, donnant les deux extrémités de l’intervalle du cosinus, 0 et 1, la quatrième fournissant la troisième extrémité à −1 en associant un vecteur à son opposé. Ces trois lignes réunies forment toute l’échelle. La cinquième ligne est un couple à 45 degrés, le demi-angle droit qui revient sans cesse en pratique, et la septième est celle qui ne tombe pas juste en trois dimensions : les deux normes valent exactement 3, mais le produit scalaire vaut 8, le cosinus vaut donc 8 ÷ 9 et se répète à l’infini. La huitième ligne est un cas obtus aux composantes de signes mêlés : un cosinus de −0,3032 et un angle de 107,6501, les deux d’accord comme ils le doivent, puisqu’un cosinus négatif et un angle inférieur à 90 degrés ne peuvent pas être vrais en même temps. La valeur en radians n’est délibérément pas une colonne ici — c’est le même angle dans une autre notation, et une cinquième colonne ne dirait rien de nouveau. Chaque valeur est recalculée à la construction de la page ; les nombres sont repris tels quels, avec le point pour séparateur décimal (0.7071 plutôt que 0,7071), parce que les valeurs viennent du calcul et non d’un texte ; les espaces à l’intérieur des deux premières colonnes sont les séparateurs et non des chiffres.

Formule

cos θ = (u · v) ÷ (|u| × |v|) θ = arccos(cos θ) u · v = u₁v₁ + u₂v₂ + … + uₙvₙ

vecteur u
Le premier vecteur, écrit comme ses composantes séparées par des espaces ou des virgules : 1 1 0 pour trois dimensions, 0 3 pour deux, ou autant qu’il vous en faut. Il n’y a pas de nombre de champs fixe parce que la page accepte n’importe quelle dimension, et les deux vecteurs doivent avoir le même nombre de composantes l’un que l’autre
vecteur v
Le second vecteur, écrit de la même façon et avec le même nombre de composantes que le premier. Échanger les deux vecteurs ne change rien — l’angle entre eux est le même dans un sens comme dans l’autre
u · v
Le produit scalaire, que cette page utilise mais n’affiche pas : multipliez les deux premières composantes, les deux deuxièmes, et ainsi de suite, puis additionnez les produits. C’est la matière première de l’angle plutôt qu’une réponse en soi ici
|u| et |v|
La norme de chaque vecteur, dans l’unité dans laquelle les composantes ont été mesurées : la racine carrée de la somme des carrés de ses composantes. Ce sont les deux nombres par lesquels le produit scalaire est divisé, et chacun ne regarde que son propre vecteur — que l’un des deux soit grand ne dit rien de l’autre
cos θ
Le cosinus de l’angle entre les deux vecteurs : le produit scalaire divisé par le produit des deux normes. Il va de 1 pour des vecteurs de même sens, passe par 0 à angle droit et descend à −1 pour des vecteurs de sens opposés, et il ne sort jamais de cet intervalle. C’est le nombre à partir duquel l’angle est réellement calculé, et c’est pourquoi la page l’affiche
θ
L’angle entre les deux vecteurs, en degrés, de 0 lorsqu’ils pointent dans le même sens, à 90 lorsqu’ils sont perpendiculaires, jusqu’à 180 lorsqu’ils pointent dans des sens opposés. C’est l’arc cosinus du nombre ci-dessus, il hérite donc de son intervalle et ne peut jamais en sortir
radians
Le même angle écrit autrement : 180 degrés valent π radians, 90 en valent la moitié, et la sortie est un nombre pur sans unité. Les formules de l’analyse et la plupart des langages de programmation veulent des radians, la page donne donc les deux plutôt que de vous faire multiplier par π et diviser par 180
degrés
L’unité de la sortie principale, et la seule sortie de la page qui ait une unité. Le cosinus et la valeur en radians sont des nombres purs
quatre décimales
La largeur avec laquelle chaque sortie est écrite. Le cosinus n’est exact que dans les cas particuliers — 0, 0,5, 1 et −1 — et l’angle n’est exact que lorsque le cosinus en fait partie, donc presque chaque ligne de cette page porte des valeurs arrondies

C’est la page qu’il faut quand vous voulez l’angle lui-même plutôt que le simple rapport entre deux directions. Trois angles méritent d’être reconnus sans aucun calcul : un cosinus de 1 signifie 0 degré et des vecteurs de même sens, un cosinus de 0 signifie 90 degrés et des vecteurs perpendiculaires, et un cosinus de −1 signifie 180 degrés et des vecteurs de sens opposés. Tout le reste est un angle véritable et la page le donne à quatre décimales. L’usage réel le plus fréquent est de confronter une direction à une direction de référence — de combien un vent a tourné depuis le nord, de combien une caméra a pivoté, de combien une direction mesurée a dérivé de celle qu’elle devrait avoir. Les problèmes de géométrie à deux directions connues sont le même calcul, et il en va de même de l’angle entre deux droites une fois chacune écrite sous forme de vecteur. Le contrôle de bon sens utile sur n’importe quelle réponse est que le cosinus et l’angle doivent raconter la même histoire : un cosinus positif va toujours avec un angle inférieur à 90 degrés, un cosinus négatif avec un angle supérieur, et un cosinus nul avec exactement 90. Si les deux ne concordent pas, les composantes ne sont pas ce que vous croyiez. La sortie en radians est là pour le cas où l’angle va être injecté dans une formule ou dans une ligne de code, puisque ceux-ci veulent presque toujours des radians, et que la conversion à la main est la source habituelle des erreurs de signe et des facteurs 180.

Exemples détaillés

  1. 1 1 0 et 1 0 1

    1. Produit scalaire : 1 × 1 + 1 × 0 + 0 × 1 = 1
    2. Norme de u : √(1 + 1 + 0) = √2 = 1,414214
    3. Norme de v : √(1 + 0 + 1) = √2 = 1,414214
    4. Cosinus : 1 ÷ (1,414214 × 1,414214) = 1 ÷ 2 = 0,5
    5. Angle : l’arc cosinus de 0,5 vaut 60 degrés, soit 60 × π ÷ 180 = 1,047198 radian

    L’entrée avec laquelle la page se charge, et la ligne la plus nette qui soit : le cosinus tombe exactement sur un demi et l’angle exactement sur 60 degrés. Remarquez que le produit scalaire, 1, n’apparaît nulle part sur le panneau — cette page affiche le cosinus et l’angle, et le produit scalaire est l’étape intermédiaire. Les deux normes valent toutes deux racine de deux, leur produit vaut donc exactement 2, ce qui explique que le cosinus et l’angle tombent juste au lieu d’être arrondis.

  2. 3 4 0 et 4 3 0

    1. Produit scalaire : 3 × 4 + 4 × 3 + 0 × 0 = 24
    2. Norme de chacun : √(9 + 16) = 5, puisque la troisième composante est nulle
    3. Cosinus : 24 ÷ (5 × 5) = 0,96
    4. Angle : l’arc cosinus de 0,96 vaut 16,2602 degrés, soit 0,2838 radian

    La ligne qui montre pourquoi le cosinus mérite d’être affiché. Un cosinus de 0,96 évoque deux vecteurs presque identiques, et l’angle vaut 16,26 degrés — environ un sixième d’un angle droit. Le cosinus comprime tout l’intervalle de 0 à 90 degrés dans les nombres entre 1 et 0, et il le fait de façon inégale, ce qui explique que lire le cosinus comme une fraction de quoi que ce soit donne un résultat faux. Les deux normes valent exactement 5 ici, le triangle 3-4-5 fait donc son travail habituel.

  3. 1 0 et 0 1

    1. Produit scalaire : 1 × 0 + 0 × 1 = 0
    2. Norme de chacun : 1
    3. Cosinus : 0 ÷ 1 = 0
    4. Angle : l’arc cosinus de zéro vaut exactement 90 degrés, soit 1,570796 radian

    La réponse pour laquelle la page est le plus souvent ouverte, et le cas exact : un cosinus nul signifie des vecteurs perpendiculaires, et l’angle revient exactement à 90 plutôt qu’arrondi. Ces deux-là forment le couple perpendiculaire le plus simple qui soit, l’un porté par l’axe des x et l’autre par l’axe des y. La valeur en radians, 1,5708, est π ÷ 2.

  4. -1 0 0 et 1 0 0

    1. Produit scalaire : (−1) × 1 + 0 × 0 + 0 × 0 = −1
    2. Norme de chacun : 1
    3. Cosinus : −1 ÷ 1 = −1
    4. Angle : l’arc cosinus de −1 vaut exactement 180 degrés, soit 3,141593 radian

    L’autre extrémité de l’intervalle. Un cosinus de −1 correspond au plus grand angle que deux vecteurs puissent former, 180 degrés, et la valeur en radians est π. Deux vecteurs de sens exactement opposés restent deux vecteurs, et l’angle entre eux n’est pas nul — c’est la ligne à regarder quand une réponse de 180 semble fausse. Elle ne l’est pas : opposé est une relation, au même titre que parallèle.

  5. 2 -3 et 4 5

    1. Produit scalaire : 2 × 4 + (−3) × 5 = 8 − 15 = −7
    2. Norme de u : √(4 + 9) = √13 = 3,605551
    3. Norme de v : √(16 + 25) = √41 = 6,403124
    4. Cosinus : −7 ÷ (3,605551 × 6,403124) = −7 ÷ 23,086793 = −0,303201
    5. Angle : l’arc cosinus de −0,303201 vaut 107,6501 degrés, soit 1,8788 radian

    Une réponse obtuse, et c’est le cas qui prend les gens en défaut : deux vecteurs peuvent former un angle supérieur à 90 degrés, et ils le font chaque fois que le produit scalaire est négatif. Une composante de u est négative ici, ce qui est la façon d’écrire un vecteur qui pointe vers la gauche ou vers le bas. Le cosinus de −0,3032 est petit mais son signe est tout le message — il dit que les deux vecteurs s’écartent l’un de l’autre, et l’angle de 107,6501 degrés est d’accord avec lui.

Limites

Les deux vecteurs doivent avoir le même nombre de composantes, et un couple qui ne concorde pas est refusé plutôt que complété par des zéros. Le vecteur nul est refusé sans exception : un vecteur dont toutes les composantes sont nulles n’a aucune direction, l’angle entre lui et autre chose est donc indéfini, et la page décline tout le calcul plutôt que d’afficher un angle de zéro qui se lirait comme un même sens. Les composantes se lisent comme des nombres ordinaires : une virgule suivie d’un espace sépare deux composantes, une virgule sans espace après elle se lit comme un séparateur décimal (1,5 vaut un et demi), et un groupement de milliers est refusé plutôt que deviné — écrivez 1500, pas 1 500. Jusqu’à 200 composantes sont acceptées dans chaque vecteur, bien au-delà de tout cas écrit à la main mais en deçà des tailles qu’utiliserait une chaîne de traitement de données. Le produit scalaire lui-même ne figure pas parmi les sorties, à dessein : c’est l’étape à partir de laquelle l’angle est calculé, et la page qui l’affiche comme réponse en est une autre. Les quatre décimales sont une largeur d’affichage et non une prétention de précision, et les deux sorties sont calculées à partir des normes non arrondies, donc remultiplier les valeurs affichées entre elles peut ne pas redonner exactement l’angle affiché. Rien sur la page ne sait dans quoi les composantes sont mesurées — les entrées sont des nombres purs, et le cosinus et la valeur en radians le sont aussi, les degrés étant la seule unité présente.

Questions fréquentes

Comment saisir les composantes ?
Séparez-les par des espaces, ou par une virgule suivie d’un espace : 1 1 0 et 1, 1, 0 fonctionnent tous les deux. Une virgule placée entre deux chiffres sans espace après elle se lit comme un séparateur décimal (1,5 vaut un et demi) ; un groupement de milliers comme 1 500 est refusé plutôt que deviné, écrivez donc 1500. Les deux vecteurs doivent avoir le même nombre de composantes, et ce nombre n’est pas limité tant qu’ils concordent — deux dimensions et trois dimensions, c’est la même page.
À quoi sert le cosinus de l’angle ?
C’est le nombre à partir duquel l’angle est calculé, et il est plus facile à lire que l’angle dans les trois cas qui comptent. Un cosinus de 1 signifie que les vecteurs pointent dans le même sens, 0 qu’ils sont perpendiculaires, et −1 qu’ils sont opposés. Tout ce qui est entre les deux est un angle véritable et la page le donne en degrés et en radians.
Comment savoir si deux vecteurs sont perpendiculaires ?
Leur cosinus de l’angle est nul, et la page affichera exactement 90 degrés. Ce test n’a besoin d’aucune des fonctions trigonométriques qu’utilise la sortie en angle — il est vrai précisément lorsque le produit scalaire est nul, ce qui ne demande que les multiplications. Cette page montre le cosinus pour que le cas de l’angle droit soit visible sans rien calculer.
Pourquoi l’angle ne dépasse-t-il jamais 180 degrés ?
Parce que le cosinus de l’angle est borné entre −1 et 1, et que l’arc cosinus ne renvoie que des valeurs de 0 à 180 degrés. Un angle de 180 degrés signifie que les deux vecteurs pointent dans des sens exactement opposés, et un angle de 200 degrés entre deux directions n’existe pas — 200 et 160 décrivent le même couple de flèches.
Pourquoi y a-t-il deux sorties d’angle, en degrés et en radians ?
Parce que les deux publics sont différents. Les gens lisent des degrés ; les formules et les langages de programmation veulent presque toujours des radians, et 180 degrés valent π radians. Afficher les deux évite à quiconque de multiplier par π et de diviser par 180, ce qui est la source des erreurs de facteur 180. La valeur en radians est un nombre pur, sans unité.
Pourquoi le vecteur nul est-il refusé ?
Parce que le vecteur nul n’a aucune direction, l’angle entre lui et autre chose est donc indéfini. Sa norme est nulle et le cosinus est le produit scalaire divisé par le produit des deux normes, le calcul reviendrait donc à diviser par zéro. Une page qui renverrait 0 degré affirmerait qu’il pointe dans le même sens que votre vecteur, ce qui est une affirmation portant sur une direction qui n’existe pas.

Références

Calculatrices liées