Vektorien Toteutus Pythonissa
Pyyhkäise näyttääksesi valikon
Vektorien määrittely Pythonissa
Pythonissa käytetään NumPy-taulukoita 2D-vektorien määrittelyyn seuraavasti:
1234567import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) print(f'v1 = {v1}') print(f'v2 = {v2}')
Nämä edustavat vektoreita:
v1=(2,1),v2=(1,3)Näitä voidaan nyt laskea yhteen, vähentää tai käyttää pistetulon ja itseisarvon laskemiseen.
Vektorien yhteenlasku
Vektorien yhteenlaskeminen:
1234567import numpy as np v1 = np.array([2, 1]) v2 = np.array([1, 3]) v3 = v1 + v2 print(f'v3 = v1 + v2 = {v3}')
Tämä suorittaa laskun:
(2,1)+(1,3)=(3,4)Tämä vastaa vektorien yhteenlaskun sääntöä:
a+b=(a1+b1,a2+b2)Vektorin pituus (suuruus)
Vektorin pituuden laskeminen Pythonissa:
np.linalg.norm(v)
Vektorille [3, 4]:
123import numpy as np print(np.linalg.norm([3, 4])) # 5.0
Tämä käyttää kaavaa:
∣a∣=a12+a22Pistetulo
Pistetulon laskeminen:
123import numpy as np print(np.dot([1, 2], [2, 3]))
Joka antaa:
[1,2]⋅[2,3]=1⋅2+2⋅3=8Pistetulon yleinen sääntö:
a⋅b=a1b1+a2b2Vektorien visualisointi Matplotlibilla
Voit käyttää Matplotlibin quiver()-funktiota piirtääksesi nuolia, jotka esittävät vektoreita ja niiden tulovektoria. Jokainen nuoli näyttää vektorin sijainnin, suunnan ja pituuden.
- Sininen: v1, piirretään origosta;
- Vihreä: v2, alkaa v1-vektorin päästä;
- Punainen: tulovektori, piirretään origosta lopulliseen kärkeen.
Esimerkki:
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()
Parametrit (ensimmäisen quiver-kutsun perusteella):
ax.quiver(0, 0, 2, 1, color='blue', angles='xy', scale_units='xy', scale=1)
0, 0– vektorin alkupiste (origo);2, 1– vektorin komponentit x- ja y-suunnassa;color='blue'– asettaa nuolen väriksi sinisen;angles='xy'– piirtää nuolen käyttäen karteesisia koordinaatteja (x–y-taso);scale_units='xy'– skaalaa nuolen samojen yksiköiden mukaan kuin akselit;scale=1– säilyttää nuolen todellisen pituuden (ei automaattista skaalausta).
Tämä kuvaaja esittää vektorien yhteenlaskun kärjestä kantaan -menetelmällä, jossa punainen vektori kuvaa summaa v1+v2.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme