Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Implémentation des Vecteurs en Python | Fondements de l'Algèbre Linéaire
Mathématiques pour la Science des Données

Implémentation des Vecteurs en Python

Glissez pour afficher le menu

Définition des vecteurs en Python

En Python, l'utilisation des tableaux NumPy permet de définir des vecteurs 2D comme suit :

1234567
import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) print(f'v1 = {v1}') print(f'v2 = {v2}')

Ceux-ci représentent les vecteurs :

v1=(2,1),v2=(1,3)\vec{v}_1 = (2, 1), \quad \vec{v}_2 = (1, 3)

Ils peuvent maintenant être additionnés, soustraits ou utilisés dans des calculs de produit scalaire et de norme.

Addition de vecteurs

Pour effectuer l'addition de vecteurs :

1234567
import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) v3 = v1 + v2 print(f'v3 = v1 + v2 = {v3}')

Cela effectue :

(2,1)+(1,3)=(3,4)(2, 1) + (1, 3) = (3, 4)

Cela correspond à la règle d'addition des vecteurs :

a+b=(a1+b1,  a2+b2)\vec{a} + \vec{b} = (a_1 + b_1, \; a_2 + b_2)

Magnitude du vecteur (Longueur)

Pour calculer la magnitude en Python :

np.linalg.norm(v)

Pour le vecteur [3, 4] :

123
import numpy as np print(np.linalg.norm([3, 4])) # 5.0

Ceci utilise la formule :

a=a12+a22|\vec{a}| = \sqrt{a_1^2 + a_2^2}

Produit scalaire

Pour calculer le produit scalaire :

123
import numpy as np print(np.dot([1, 2], [2, 3]))

Ce qui donne :

[1,2][2,3]=12+23=8[1, 2] \cdot [2, 3] = 1 \cdot 2 + 2 \cdot 3 = 8

Règle générale du produit scalaire :

ab=a1b1+a2b2\vec{a} \cdot \vec{b} = a_1 b_1 + a_2 b_2

Visualisation des vecteurs avec Matplotlib

La fonction quiver() de Matplotlib permet de dessiner des flèches représentant les vecteurs et leur résultante. Chaque flèche indique la position, la direction et la norme d’un vecteur.

  • Bleu : v1\vec{v}_1, tracé depuis l’origine ;
  • Vert : v2\vec{v}_2, débutant à l’extrémité de v1\vec{v}_1 ;
  • Rouge : vecteur résultant, tracé de l’origine à la pointe finale.

Exemple :

123456789101112131415161718
import matplotlib.pyplot as plt fig, ax = plt.subplots() # v1 ax.quiver(0, 0, 2, 1, color='blue', angles='xy', scale_units='xy', scale=1) # v2 (head-to-tail) ax.quiver(2, 1, 1, 3, color='green', angles='xy', scale_units='xy', scale=1) # resultant ax.quiver(0, 0, 3, 4, color='red', angles='xy', scale_units='xy', scale=1) plt.xlim(0, 5) plt.ylim(0, 5) plt.grid(True) plt.title('Vector Addition (Head-to-Tail Method)') plt.show()

Paramètres (basés sur le premier appel à quiver) :

ax.quiver(0, 0, 2, 1, color='blue', angles='xy', scale_units='xy', scale=1)
  • 0, 0 – point de départ du vecteur (origine) ;
  • 2, 1 – composantes du vecteur selon les directions x et y ;
  • color='blue' – définit la couleur de la flèche en bleu ;
  • angles='xy' – trace la flèche en utilisant les coordonnées cartésiennes (plan x–y) ;
  • scale_units='xy' – met à l'échelle la flèche selon les mêmes unités que les axes ;
  • scale=1 – conserve la longueur réelle de la flèche (pas de mise à l'échelle automatique).

Ce graphique illustre l’addition de vecteurs tête-à-queue, où le vecteur rouge représente la somme v1+v2\vec{v}_1 + \vec{v}_2.

question mark

Quel code calcule correctement le produit scalaire de [1,2][1,2] et [2,3][2,3] ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 2

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Section 4. Chapitre 2
some-alt