Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Implementering av Vektorer i Python | Grunder i Linjär Algebra
Matematik för Data Science

bookImplementering av Vektorer i Python

Definiera vektorer i Python

I Python används NumPy-arrayer för att definiera tvådimensionella vektorer enligt följande:

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

Dessa representerar vektorerna:

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

Dessa kan nu adderas, subtraheras eller användas i skalärprodukt- och längdberäkningar.

Vektoraddition

För att beräkna vektoraddition:

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

Detta utför:

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

Detta överensstämmer med regeln för vektoraddition:

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

Vektorns Magnitud (Längd)

För att beräkna magnituden i Python:

np.linalg.norm(v)

För vektorn [3, 4]:

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

Detta använder formeln:

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

Skalärprodukt

För att beräkna skalärprodukten:

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

Vilket ger:

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

Allmän regel för skalärprodukt:

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

Visualisering 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\vec{v}_1, ritad från origo;
  • Grön: v2\vec{v}_2, startar vid spetsen av v1\vec{v}_1;
  • Röd: resultantvektor, ritad från origo till slutlig spets.

Exempel:

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

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\vec{v}_1 + \vec{v}_2.

question mark

Vilken kod beräknar korrekt skalärprodukten av [1,2][1,2] och [2,3][2,3]?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 2

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Awesome!

Completion rate improved to 1.96

bookImplementering 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:

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

Dessa representerar vektorerna:

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

Dessa kan nu adderas, subtraheras eller användas i skalärprodukt- och längdberäkningar.

Vektoraddition

För att beräkna vektoraddition:

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

Detta utför:

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

Detta överensstämmer med regeln för vektoraddition:

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

Vektorns Magnitud (Längd)

För att beräkna magnituden i Python:

np.linalg.norm(v)

För vektorn [3, 4]:

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

Detta använder formeln:

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

Skalärprodukt

För att beräkna skalärprodukten:

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

Vilket ger:

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

Allmän regel för skalärprodukt:

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

Visualisering 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\vec{v}_1, ritad från origo;
  • Grön: v2\vec{v}_2, startar vid spetsen av v1\vec{v}_1;
  • Röd: resultantvektor, ritad från origo till slutlig spets.

Exempel:

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

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\vec{v}_1 + \vec{v}_2.

question mark

Vilken kod beräknar korrekt skalärprodukten av [1,2][1,2] och [2,3][2,3]?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 2
some-alt