Implementering av Vektorer i Python
Definiera vektorer i Python
I Python används NumPy-arrayer för att definiera tvådimensionella vektorer enligt följande:
1234567import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) print(f'v1 = {v1}') print(f'v2 = {v2}')
Dessa representerar vektorerna:
v1=(2,1),v2=(1,3)Dessa kan nu adderas, subtraheras eller användas i skalärprodukt- och längdberäkningar.
Vektoraddition
För att beräkna vektoraddition:
1234567import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) v3 = v1 + v2 print(f'v3 = v1 + v2 = {v3}')
Detta utför:
(2,1)+(1,3)=(3,4)Detta överensstämmer med regeln för vektoraddition:
a+b=(a1+b1,a2+b2)Vektorns Magnitud (Längd)
För att beräkna magnituden i Python:
np.linalg.norm(v)
För vektorn [3, 4]
:
123import numpy as np print(np.linalg.norm([3, 4])) # 5.0
Detta använder formeln:
∣a∣=a12+a22Skalärprodukt
För att beräkna skalärprodukten:
123import numpy as np print(np.dot([1, 2], [2, 3]))
Vilket ger:
[1,2]⋅[2,3]=1⋅2+2⋅3=8Allmän regel för skalärprodukt:
a⋅b=a1b1+a2b2Visualisering av vektorer med Matplotlib
Du kan använda funktionen quiver()
i Matplotlib för att rita pilar som representerar vektorer och deras resultant. Varje pil visar position, riktning och storlek för en vektor.
- Blå: v1, ritad från origo;
- Grön: v2, startar vid spetsen av v1;
- Röd: resultantvektor, ritad från origo till slutlig spets.
Exempel:
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()
Parametrar (baserat på det första quiver
-anropet):
ax.quiver(0, 0, 2, 1, color='blue', angles='xy', scale_units='xy', scale=1)
0, 0
– startpunkt för vektorn (origo);2, 1
– vektorkomponenter i x- och y-led;color='blue'
– sätter pilens färg till blå;angles='xy'
– ritar pilen med hjälp av kartesiska koordinater (x–y-plan);scale_units='xy'
– skalar pilen enligt samma enheter som axlarna;scale=1
– behåller pilens verkliga längd (ingen automatisk skalning).
Denna graf visar vektoraddition med huvud-till-svans-metoden, där den röda vektorn representerar summan v1+v2.
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
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
Implementering av Vektorer i Python
Svep för att visa menyn
Definiera vektorer i Python
I Python används NumPy-arrayer för att definiera tvådimensionella vektorer enligt följande:
1234567import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) print(f'v1 = {v1}') print(f'v2 = {v2}')
Dessa representerar vektorerna:
v1=(2,1),v2=(1,3)Dessa kan nu adderas, subtraheras eller användas i skalärprodukt- och längdberäkningar.
Vektoraddition
För att beräkna vektoraddition:
1234567import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) v3 = v1 + v2 print(f'v3 = v1 + v2 = {v3}')
Detta utför:
(2,1)+(1,3)=(3,4)Detta överensstämmer med regeln för vektoraddition:
a+b=(a1+b1,a2+b2)Vektorns Magnitud (Längd)
För att beräkna magnituden i Python:
np.linalg.norm(v)
För vektorn [3, 4]
:
123import numpy as np print(np.linalg.norm([3, 4])) # 5.0
Detta använder formeln:
∣a∣=a12+a22Skalärprodukt
För att beräkna skalärprodukten:
123import numpy as np print(np.dot([1, 2], [2, 3]))
Vilket ger:
[1,2]⋅[2,3]=1⋅2+2⋅3=8Allmän regel för skalärprodukt:
a⋅b=a1b1+a2b2Visualisering av vektorer med Matplotlib
Du kan använda funktionen quiver()
i Matplotlib för att rita pilar som representerar vektorer och deras resultant. Varje pil visar position, riktning och storlek för en vektor.
- Blå: v1, ritad från origo;
- Grön: v2, startar vid spetsen av v1;
- Röd: resultantvektor, ritad från origo till slutlig spets.
Exempel:
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()
Parametrar (baserat på det första quiver
-anropet):
ax.quiver(0, 0, 2, 1, color='blue', angles='xy', scale_units='xy', scale=1)
0, 0
– startpunkt för vektorn (origo);2, 1
– vektorkomponenter i x- och y-led;color='blue'
– sätter pilens färg till blå;angles='xy'
– ritar pilen med hjälp av kartesiska koordinater (x–y-plan);scale_units='xy'
– skalar pilen enligt samma enheter som axlarna;scale=1
– behåller pilens verkliga längd (ingen automatisk skalning).
Denna graf visar vektoraddition med huvud-till-svans-metoden, där den röda vektorn representerar summan v1+v2.
Tack för dina kommentarer!