Dotproduktkalkylator

Dot produkt
Nästa

Skalärprodukten sammanfattar två vektorer till en enda skalär som anger hur mycket de pekar i samma riktning. Den ligger till grund för cosinuslikhet vid sökresultatrankning, projektioner inom fysik samt varje ljusberäkning inom datorgrafik. Verktyget beräknar skalärprodukten av två vektorer med samma dimension (2D, 3D eller N-dimensionell) och visar cosinus för vinkeln mellan dem.

Så beräknar du en skalärprodukt

  1. 1

    Ange båda vektorerna

    Skriv komponenterna åtskilda med komma eller mellanslag: `3, 4, 5` för den ena vektorn och `1, 2, 1` för den andra.

  2. 2

    Matcha dimensionerna

    Vektorerna måste ha samma längd. Om dimensionerna inte stämmer överens flaggar verktyget det innan beräkningen.

  3. 3

    Se resultatet

    Den skalära produkten visas tillsammans med cosinus för vinkeln (cos θ) och själva vinkeln i grader.

De två formulerna

Komponentform för vektorerna a = (a1, a2, ..., an) och b = (b1, b2, ..., bn):

a . b = a1*b1 + a2*b2 + ... + an*bn

Geometrisk form:

a . b = |a| * |b| * cos(theta)

De två uttrycken är lika; när de ställs lika ger det formeln cos(theta) = (a.b) / (|a| |b|) för cosinuslikheten.

Vad tecknet säger

Skalärprodukt Betydelse
Positiv Vektorerna pekar ungefär i samma riktning (vinkel < 90°)
Noll Vektorerna är ortogonala (vinkelräta)
Negativ Vektorerna pekar ungefär i motsatta riktningar (vinkel > 90°)

Uträknat exempel

a = (3, 4), b = (1, 2):

  • Komponenter: 3×1 + 4×2 = 3 + 8 = 11
  • |a| = √(9 + 16) = 5
  • |b| = √(1 + 4) = √5 ≈ 2,236
  • cos(θ) = 11 / (5 × 2,236) = 0,9839
  • θ = arccos(0,9839) ≈ 10,3 grader

Vektorerna pekar nästan i samma riktning, vilket förklarar den stora positiva skalärprodukten.

Vanliga tillämpningar

  • Cosinuslikhet för rekommendationssystem: hur lika är två inbäddningsvektorer?
  • Projektion av en vektor på en annan: proj_b(a) = (a . b) / |b|^2 * b.
  • Arbete inom fysik: W = F . d, skalärprodukten av kraft och förskjutning.
  • Grafisk belysning: skalärprodukten av ytnormalen och ljusriktningen ger den diffusa ljusstyrkan (Lamberts lag).
  • Ortogonalitetskontroll: kontrollera snabbt om två basvektorer är vinkelräta mot varandra.

Tips

  • Normalisera innan du jämför. Om du bara bryr dig om riktningen (likheten) delar du först varje vektor med dess storlek; då blir skalärprodukten direkt lika med cosinus.
  • Håll koll på dimensionen. Skalärprodukten av en 3-vektor med en 4-vektor är odefinierad; fyll ut eller trunkera medvetet, inte av misstag.
  • Numerisk stabilitet. För mycket stora vektorer kan ackumulering i flyttal förlora precision; använd dubbel precision eller Kahan-summering när dimensionen överstiger några tusen.

Vanliga frågor

Dotprodukten returnerar en skalär och mäter hur parallella två vektorer är. Korsprodukten (endast definierad i 3D och 7D) returnerar en vektor som är vinkelrätt mot båda vektorerna och mäter hur vinkelrätt de är. De besvarar motsatta frågor.

Ja, för varje dimension N. Den komponentvisa definitionen kan direkt tillämpas och används dagligen inom maskininlärning med vektorer av hundratals eller tusentals dimensioner.

Eftersom den geometriska formen |a| |b| cos(theta) är noll när cos är noll, vilket sker vid 90 och 270 grader, är två icke-nulvektorer ortogonala precis när deras skalärprodukt är noll.

De vektorkomponenter du anger skickas till vår server eftersom beräkningen sker där. De sparas inte och kopplas inte till ditt konto.

Relaterade verktyg

Verktyget finns på andra språk