Aller au contenu principal
CalcMax

Calculatrice de produit scalaire

Résultat

8,0000

Produit scalaire

Norme de u
3,0000
Norme de v
3,0000
Angle entre les vecteurs
27,2660 °

Une calculatrice de produit scalaire prend deux vecteurs et renvoie leur produit scalaire — aussi appelé produit intérieur —, la norme de chacun d’eux et l’angle entre deux vecteurs. Saisissez les composantes de chaque vecteur séparées par des espaces ou des virgules — 1 2 2 pour un vecteur à trois dimensions, 0 3 pour un vecteur à deux dimensions — et la page fait le reste. Un vecteur est une liste de nombres qui représente une grandeur à la fois par sa taille et par sa direction : un vent de 30 kilomètres à l’heure venant du nord-est, une force qui pousse vers le bas et de côté, la direction dans laquelle une caméra pointe. Le produit scalaire de deux vecteurs s’obtient en multipliant les deux premières composantes, les deux deuxièmes, les deux troisièmes, puis en additionnant tous ces produits. Ce nombre unique dit quelque chose de la façon dont les deux vecteurs pointent l’un par rapport à l’autre, et c’est pourquoi on le retrouve partout, du calcul d’éclairage dans les jeux vidéo à la définition du travail en physique. Sa valeur est la plus grande quand les deux pointent du même côté, nulle quand ils sont à angle droit, et négative quand ils pointent en sens opposés. La page traduit directement ce nombre en angle, en s’appuyant sur le fait que le produit scalaire est égal au produit des deux normes multiplié par le cosinus de l’angle entre les vecteurs. Réarrangée, cette relation dit que le cosinus de l’angle est le produit scalaire divisé par le produit des deux normes, et que l’angle est l’arccosinus de ce quotient. Trois réponses méritent d’être reconnues au premier coup d’œil. Un produit scalaire nul signifie que les vecteurs sont perpendiculaires, parce que le cosinus de 90 degrés est nul : c’est le service le plus utile que rend cette page, tester si deux directions sont à angle droit sans rien mesurer. Deux vecteurs égaux donnent un angle nul, puisqu’ils pointent du même côté. Deux vecteurs opposés donnent 180 degrés. Une saisie est refusée plutôt que calculée : le vecteur nul, qui n’a aucune direction. Son produit scalaire avec n’importe quoi est nul, et diviser par sa norme pour obtenir un angle reviendrait à diviser par zéro : la page décline donc tout le calcul plutôt que de rendre une réponse partielle avec un trou dedans. Tout le reste est accepté, y compris des vecteurs de n’importe quelle longueur dès lors que les deux ont la même, et des composantes négatives, qui sont la façon d’écrire un vecteur pointant vers la gauche ou vers le bas.

Les couples de vecteurs et ce qu’ils donnent

Vecteur uVecteur vProduit scalaire|u||v|Angle (degrés)
1 2 22 2 183327.266
3 4 04 3 0245516.2602
1 00 101190
1 1 11 1 131.73211.73210
1 2 34 5 6323.74178.77512.9332
-1 0 01 0 0-111180
2 -34 5-73.60566.4031107.6501
1 23 4112.2361510.3048

Huit couples, et la première ligne est celle que la page charge par défaut. La deuxième colonne est l’endroit où chercher les trois réponses qui méritent d’être reconnues au premier coup d’œil. La troisième ligne est l’angle droit le plus simple qui soit, un vecteur le long de chaque axe : son produit scalaire est nul et l’angle revient à exactement 90 — c’est le test de perpendicularité pour lequel la page est le plus souvent utilisée, et il n’a besoin d’aucune des fonctions trigonométriques qu’emploie la colonne de l’angle. La quatrième ligne est deux copies du même vecteur, ce qui donne le plus grand produit scalaire du tableau et un angle de 0, et la sixième est un vecteur et son opposé, ce qui donne le seul produit scalaire négatif d’ici et un angle de 180. À elles trois, ces lignes couvrent tout l’intervalle : même sens, angle droit, sens opposés. La cinquième ligne est le couple mal rangé dont les deux normes sont des racines carrées, et c’est la ligne qui montre que l’angle est calculé à partir des normes non arrondies — multiplier 3,7417 par 8,775 puis diviser 32 par le résultat redonne bien 12,9332, mais de justesse. La septième ligne porte des composantes négatives et de signes mêlés, ce qui est la façon d’écrire un vecteur pointant vers la gauche ou vers le bas, et son produit scalaire de −7 avec un angle de 107,6501 est le cas où le signe et l’angle doivent s’accorder : au-dessus de 90 degrés et négatif, comme il se doit. La huitième ligne est un couple à deux dimensions, puisque la page accepte n’importe quel nombre de composantes. Chaque valeur ici est recalculée à la construction de la page, et les espaces des deux premières colonnes sont les séparateurs entre composantes, non des chiffres. Les nombres sont repris tels quels : dans le tableau, le séparateur décimal est le point (27.266 plutôt que 27,266), parce que les valeurs viennent du calcul et non d’un texte.

Formule

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

Vecteur u
Le premier vecteur, écrit comme la suite de ses composantes séparées par des espaces ou des virgules : 1 2 2 pour trois dimensions, 0 3 pour deux, ou autant qu’il vous en faut. Il n’y a pas de nombre fixe de cases puisque la page accepte n’importe quelle dimension, et les deux vecteurs doivent avoir le même nombre de composantes
Vecteur v
Le second vecteur, écrit de la même façon et avec le même nombre de composantes que le premier. L’ordre n’a pas d’importance pour le produit scalaire ni pour l’angle — échanger les deux vecteurs donne les mêmes réponses
u · v
Le produit scalaire : multipliez les deux premières composantes entre elles, les deux deuxièmes, et ainsi de suite, puis additionnez les résultats. C’est un simple nombre, sans unité, puisque les composantes d’un vecteur portent l’unité de la grandeur et que le produit de deux d’entre elles porterait cette unité au carré
|u| et |v|
La norme de chaque vecteur, dans l’unité où les composantes ont été mesurées : la racine carrée de la somme des carrés de ses composantes. C’est la longueur ordinaire de la flèche, et c’est le même calcul que la distance de l’origine au point vers lequel le vecteur pointe
θ
L’angle entre les deux vecteurs, en degrés, de 0 quand ils pointent du même côté, à 90 quand ils sont perpendiculaires, jusqu’à 180 quand ils pointent en sens opposés. Il ne sort jamais de cet intervalle, car l’arccosinus ne peut rien renvoyer en dehors
cos θ
Le produit scalaire divisé par le produit des deux normes, ce qui fait le lien entre les deux moitiés de cette page. Il va de 1 pour des vecteurs de même sens, à 0 à angle droit, jusqu’à −1 pour des vecteurs de sens opposés, et c’est le nombre à partir duquel l’angle est réellement calculé
Degrés
L’unité de l’angle en sortie, et la seule sortie de la page qui ait une unité tout court. Le produit scalaire et les deux normes sont de simples nombres
Quatre décimales
La largeur d’écriture de toutes les sorties. Le produit scalaire est souvent un nombre entier quand les composantes le sont ; les deux normes portent une racine carrée et l’angle porte un arccosinus, si bien que ces trois valeurs ne tombent presque jamais juste

Le produit scalaire est la façon standard de demander à quel point deux directions s’accordent, et les questions auxquelles il répond se posent plus souvent que l’arithmétique ne le laisse croire. La perpendicularité est la principale : si le produit scalaire est nul, les deux vecteurs se coupent à angle droit, ce qui permet à un programme de décider si une surface fait face à une lumière, si un trajet traverse un mur ou si deux droites d’un dessin sont d’équerre — et cela ne demande que les multiplications, sans aucune trigonométrie. Le signe est la chose à regarder ensuite : positif signifie que les deux pointent globalement du même côté, négatif qu’ils pointent globalement à l’opposé, et c’est tout le test qui se cache derrière l’élimination des faces cachées et derrière la question de savoir si une force travaille pour un objet ou contre lui. La physique utilise le même nombre sous le nom de travail : le travail d’une force est la force scalairement multipliée par le déplacement, ce qui explique pourquoi pousser de biais fait moins d’effet que pousser droit, et pourquoi pousser à angle droit n’en fait aucun. Quand vous voulez l’angle lui-même et non seulement la relation, la page le donne, et les valeurs à reconnaître sont 0, 90 et 180 degrés — parallèles, perpendiculaires, opposés. Tout le reste est un couple de vecteurs qui s’est écarté de ces trois cas, et le contrôle utile est que le signe du produit scalaire doit s’accorder avec l’angle : un produit scalaire négatif et un angle inférieur à 90 degrés ne peuvent pas être vrais tous les deux.

Exemples détaillés

  1. 1 2 2 et 2 2 1

    1. Produit scalaire : 1 × 2 + 2 × 2 + 2 × 1 = 2 + 4 + 2 = 8
    2. Norme de u : √(1 + 4 + 4) = √9 = 3
    3. Norme de v : √(4 + 4 + 1) = √9 = 3
    4. Cosinus : 8 ÷ (3 × 3) = 0,888889, et l’arccosinus vaut 27,2659…, ce qui s’arrondit à 27,266

    La saisie chargée par défaut, et une saisie bien rangée : les deux vecteurs ont exactement pour norme 3, donc le cosinus se réduit au produit scalaire divisé par neuf. Deux vecteurs différents, un produit scalaire, deux normes, un angle — toute la page en une ligne. L’angle est inférieur à 90 degrés et le produit scalaire est positif, ce qui est le contrôle de signe à faire sur chaque réponse.

  2. 3 4 0 et 4 3 0

    1. Produit scalaire : 3 × 4 + 4 × 3 + 0 × 0 = 12 + 12 = 24
    2. Norme de chacun : √(9 + 16) = 5, puisque la troisième composante est nulle
    3. Cosinus : 24 ÷ (5 × 5) = 0,96, et l’arccosinus vaut 16,2602…

    Deux vecteurs couchés dans le plan, écrits avec un zéro explicite en troisième composante pour montrer qu’un vecteur à deux dimensions n’est qu’un vecteur à trois dimensions avec un zéro dedans. Les deux normes tombent exactement à 5, ce qui est le triangle trois quatre cinq qui fait son travail habituel. L’angle est petit et le produit scalaire grand et positif, ce qui est la forme de deux vecteurs pointant à peu près du même côté.

  3. 1 0 et 0 1

    1. Produit scalaire : 1 × 0 + 0 × 1 = 0
    2. Norme de chacun : 1
    3. Cosinus : 0 ÷ 1 = 0, et l’arccosinus de zéro vaut exactement 90 degrés

    La réponse pour laquelle cette page est le plus souvent utilisée. Un produit scalaire nul signifie que les deux vecteurs sont perpendiculaires, et ces deux-ci en sont l’exemple le plus simple : l’un le long de l’axe des x, l’autre le long de l’axe des y. À noter que l’angle revient à exactement 90 et non à une valeur arrondie, parce que le cosinus est exactement nul et qu’aucune racine carrée ni division n’a été nécessaire pour y arriver. C’est le test de l’angle droit, et il n’a besoin d’aucune des fonctions trigonométriques qu’utilise la sortie d’angle.

  4. 1 2 3 et 4 5 6

    1. Produit scalaire : 1 × 4 + 2 × 5 + 3 × 6 = 4 + 10 + 18 = 32
    2. Norme de u : √(1 + 4 + 9) = √14 = 3,741657…, ce qui s’arrondit à 3,7417
    3. Norme de v : √(16 + 25 + 36) = √77 = 8,774964…, ce qui s’arrondit à 8,775
    4. Cosinus : 32 ÷ (3,741657 × 8,774964) = 0,974631…, et l’arccosinus vaut 12,9331…, ce qui s’arrondit à 12,9332

    Deux vecteurs dont les normes ne sont pas bien rangées, et la ligne à regarder si vous voulez voir ce que coûte l’arrondi. Les deux normes sont des racines carrées qui ne se terminent pas : le cosinus est donc calculé à partir de leurs valeurs non arrondies et non à partir des 3,7417 et 8,775 affichés, ce qui explique que diviser 32 par le produit des deux nombres imprimés donne 0,9746 et retombe sur le même angle, mais de justesse. L’angle est petit parce que les deux vecteurs sont proches d’être parallèles — 4 5 6, c’est à peu près 1 2 3 multiplié par un facteur.

  5. −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, et l’arccosinus de −1 vaut exactement 180 degrés

    L’autre extrémité de l’intervalle. Deux vecteurs pointant dans des directions exactement opposées ont un produit scalaire égal à moins le produit de leurs normes, ici −1, ce qui donne un cosinus de −1 et un angle de 180 degrés. C’est la ligne qui montre pourquoi le produit scalaire peut être négatif et ce que signifie une valeur négative : ni une erreur ni un angle plus petit, mais deux flèches qui s’éloignent l’une de l’autre.

Limites

Les deux vecteurs doivent avoir le même nombre de composantes, et la page refuse un couple qui ne les a pas plutôt que de compléter le plus court avec des zéros. Le vecteur nul est refusé purement et simplement : un vecteur dont toutes les composantes sont nulles n’a pas de direction, l’angle entre lui et n’importe quoi d’autre n’est donc pas défini, et la page décline tout le calcul plutôt que d’afficher un angle de zéro qui se lirait comme « même direction ». Les composantes sont lues comme des nombres ordinaires : une virgule suivie d’un espace sépare deux composantes, une virgule sans espace après elle est lue 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, ce qui dépasse largement tout cas écrit à la main et reste en deçà des tailles qu’utiliserait une chaîne de traitement de données. Quatre décimales sont une largeur d’affichage et non une prétention à la précision, et l’angle est calculé à partir des normes non arrondies : multiplier les nombres imprimés entre eux peut donc ne pas reproduire exactement l’angle imprimé. La page ne traite que le produit scalaire et l’angle : elle ne donne pas le produit vectoriel, ni la projection d’un vecteur sur l’autre, ni les vecteurs unitaires, et elle ne tient aucun compte de l’unité dans laquelle les composantes sont mesurées — un produit scalaire calculé à partir de composantes en mètres revient donc comme un simple nombre et non en mètres carrés.

Questions fréquentes

Comment saisir les composantes ?
Séparez-les par des espaces ou par une virgule suivie d’un espace : 1 2 2 et 1, 2, 2 fonctionnent tous les deux. Une virgule placée entre deux chiffres sans espace après elle est lue 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 leur nombre n’est pas limité tant qu’il correspond — deux dimensions et trois dimensions, c’est la même page.
Que m’apprend réellement le produit scalaire ?
À quel point les deux vecteurs pointent du même côté. Il est maximal quand ils sont parallèles et de même sens, nul quand ils sont perpendiculaires, et négatif quand ils pointent en sens opposés. Sa valeur dépend aussi de la norme des vecteurs, donc un grand produit scalaire sur des vecteurs longs ne signifie pas un petit angle — divisez par les deux normes, ce que la page fait pour vous, et vous obtenez le cosinus de l’angle.
Comment savoir si deux vecteurs sont perpendiculaires ?
Leur produit scalaire est nul. C’est tout le test, et il ne demande que les multiplications — ni racine carrée ni trigonométrie —, ce qui explique que ce soit la forme employée dans le code. La page vous donne quand même l’angle, et il affichera 90, mais si la perpendicularité est tout ce qui vous intéresse, le produit scalaire suffit à trancher.
Pourquoi le produit scalaire peut-il être négatif ?
Parce qu’il suit la direction autant que la taille. Deux vecteurs pointant globalement l’un vers l’autre donnent un nombre positif ; à angle droit, les deux contributions s’annulent et le produit est nul ; pointant globalement à l’opposé, ils donnent un nombre négatif. Un produit scalaire négatif va toujours de pair avec un angle supérieur à 90 degrés, et les deux ne devraient jamais se contredire — s’ils le font, il y a un problème dans les entrées.
Pourquoi un vecteur entièrement nul est-il refusé ?
Parce que le vecteur nul n’a pas de direction, si bien que l’angle entre lui et n’importe quoi d’autre n’est pas défini. Son produit scalaire avec n’importe quoi est nul et sa norme est nulle, donc calculer le cosinus reviendrait à diviser par zéro. Une page qui renverrait 0 degré affirmerait qu’il pointe du même côté que votre vecteur, c’est-à-dire une affirmation portant sur une direction qui n’existe pas.
En quelle unité la réponse est-elle donnée ?
L’angle est en degrés et les trois autres sorties n’ont aucune unité. Le produit scalaire est une somme de produits de composantes : si les composantes étaient en mètres, il est en mètres carrés, et si c’étaient de simples nombres, c’est un simple nombre. La page laisse l’unité de côté plutôt que de la deviner, puisque la même arithmétique sert à une direction, à une force et à une liste de notes d’examen.

Références

Calculatrices liées