Implementazione dei Vettori in Python
Definizione di vettori in Python
In Python, si utilizzano gli array di NumPy per definire vettori 2D come segue:
1234567import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) print(f'v1 = {v1}') print(f'v2 = {v2}')
Questi rappresentano i vettori:
v1=(2,1),v2=(1,3)Questi possono ora essere sommati, sottratti o utilizzati per il prodotto scalare e il calcolo della magnitudine.
Somma di vettori
Per calcolare la somma di vettori:
1234567import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) v3 = v1 + v2 print(f'v3 = v1 + v2 = {v3}')
Questo esegue:
(2,1)+(1,3)=(3,4)Questo corrisponde alla regola per la somma di vettori:
a+b=(a1+b1,a2+b2)Modulo (Lunghezza) di un Vettore
Per calcolare il modulo in Python:
np.linalg.norm(v)
Per il vettore [3, 4]
:
123import numpy as np print(np.linalg.norm([3, 4])) # 5.0
Questo utilizza la formula:
∣a∣=a12+a22Prodotto scalare
Per calcolare il prodotto scalare:
123import numpy as np print(np.dot([1, 2], [2, 3]))
Che restituisce:
[1,2]⋅[2,3]=1⋅2+2⋅3=8Regola generale del prodotto scalare:
a⋅b=a1b1+a2b2Visualizzazione dei vettori con Matplotlib
È possibile utilizzare la funzione quiver()
di Matplotlib per disegnare frecce che rappresentano i vettori e il loro risultante. Ogni freccia mostra la posizione, la direzione e la magnitudine di un vettore.
- Blu: v1, disegnato dall'origine;
- Verde: v2, che parte dalla punta di v1;
- Rosso: vettore risultante, disegnato dall'origine fino alla punta finale.
Esempio:
123456789101112131415161718import 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()
Parametri (basati sulla prima chiamata a quiver
):
ax.quiver(0, 0, 2, 1, color='blue', angles='xy', scale_units='xy', scale=1)
0, 0
– punto di partenza del vettore (origine);2, 1
– componenti del vettore nelle direzioni x e y;color='blue'
– imposta il colore della freccia su blu;angles='xy'
– disegna la freccia utilizzando coordinate cartesiane (piano x–y);scale_units='xy'
– scala la freccia secondo le stesse unità degli assi;scale=1
– mantiene la lunghezza reale della freccia (nessuna scala automatica).
Questo grafico mostra la somma vettoriale testa-coda, dove il vettore rosso rappresenta la somma v1+v2.
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Can you explain how vector subtraction works in Python?
How do I interpret the plot generated by the code?
Can you show how to calculate the angle between two vectors?
Awesome!
Completion rate improved to 1.96
Implementazione dei Vettori in Python
Scorri per mostrare il menu
Definizione di vettori in Python
In Python, si utilizzano gli array di NumPy per definire vettori 2D come segue:
1234567import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) print(f'v1 = {v1}') print(f'v2 = {v2}')
Questi rappresentano i vettori:
v1=(2,1),v2=(1,3)Questi possono ora essere sommati, sottratti o utilizzati per il prodotto scalare e il calcolo della magnitudine.
Somma di vettori
Per calcolare la somma di vettori:
1234567import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) v3 = v1 + v2 print(f'v3 = v1 + v2 = {v3}')
Questo esegue:
(2,1)+(1,3)=(3,4)Questo corrisponde alla regola per la somma di vettori:
a+b=(a1+b1,a2+b2)Modulo (Lunghezza) di un Vettore
Per calcolare il modulo in Python:
np.linalg.norm(v)
Per il vettore [3, 4]
:
123import numpy as np print(np.linalg.norm([3, 4])) # 5.0
Questo utilizza la formula:
∣a∣=a12+a22Prodotto scalare
Per calcolare il prodotto scalare:
123import numpy as np print(np.dot([1, 2], [2, 3]))
Che restituisce:
[1,2]⋅[2,3]=1⋅2+2⋅3=8Regola generale del prodotto scalare:
a⋅b=a1b1+a2b2Visualizzazione dei vettori con Matplotlib
È possibile utilizzare la funzione quiver()
di Matplotlib per disegnare frecce che rappresentano i vettori e il loro risultante. Ogni freccia mostra la posizione, la direzione e la magnitudine di un vettore.
- Blu: v1, disegnato dall'origine;
- Verde: v2, che parte dalla punta di v1;
- Rosso: vettore risultante, disegnato dall'origine fino alla punta finale.
Esempio:
123456789101112131415161718import 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()
Parametri (basati sulla prima chiamata a quiver
):
ax.quiver(0, 0, 2, 1, color='blue', angles='xy', scale_units='xy', scale=1)
0, 0
– punto di partenza del vettore (origine);2, 1
– componenti del vettore nelle direzioni x e y;color='blue'
– imposta il colore della freccia su blu;angles='xy'
– disegna la freccia utilizzando coordinate cartesiane (piano x–y);scale_units='xy'
– scala la freccia secondo le stesse unità degli assi;scale=1
– mantiene la lunghezza reale della freccia (nessuna scala automatica).
Questo grafico mostra la somma vettoriale testa-coda, dove il vettore rosso rappresenta la somma v1+v2.
Grazie per i tuoi commenti!