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

bookImplémentation des Vecteurs en Python

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}')
copy

Celles-ci représentent les vecteurs :

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

Ces vecteurs peuvent ensuite être additionnés, soustraits ou utilisés pour le produit scalaire et le calcul de la 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}')
copy

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 d’un 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
copy

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]))
copy

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

Vous pouvez utiliser la fonction quiver() de Matplotlib pour tracer des flèches représentant les vecteurs et leur résultante. Chaque flèche indique la position, la direction et la magnitude d’un vecteur.

  • Bleu : v1\vec{v}_1, tracé depuis l’origine ;
  • Vert : v2\vec{v}_2, commençant à l’extrémité de v1\vec{v}_1 ;
  • Rouge : vecteur résultant, tracé de l’origine jusqu’à 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()
copy

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 par la méthode 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] ?

Select the correct answer

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

Awesome!

Completion rate improved to 1.96

bookImplé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}')
copy

Celles-ci représentent les vecteurs :

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

Ces vecteurs peuvent ensuite être additionnés, soustraits ou utilisés pour le produit scalaire et le calcul de la 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}')
copy

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 d’un 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
copy

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]))
copy

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

Vous pouvez utiliser la fonction quiver() de Matplotlib pour tracer des flèches représentant les vecteurs et leur résultante. Chaque flèche indique la position, la direction et la magnitude d’un vecteur.

  • Bleu : v1\vec{v}_1, tracé depuis l’origine ;
  • Vert : v2\vec{v}_2, commençant à l’extrémité de v1\vec{v}_1 ;
  • Rouge : vecteur résultant, tracé de l’origine jusqu’à 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()
copy

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 par la méthode 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] ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 2
some-alt