Calcolatrice dell'angolo tra due vettori
Risultato
Angolo tra i vettori
- Coseno dell'angolo
- 0,5000
- Angolo in radianti
- 1,0472
Una calcolatrice dell'angolo tra due vettori prende due vettori e restituisce l'angolo tra loro, insieme al coseno da cui quell'angolo nasce e allo stesso angolo in radianti. Scrivi le componenti di ciascun vettore separate da spazi o da virgole — 1 1 0 per un vettore tridimensionale, 0 3 per uno nel piano — e la pagina fa il resto. I due vettori devono avere lo stesso numero di componenti, ma per il resto non c'è nessun limite a quante siano, e le componenti negative vanno benissimo. L'aritmetica dietro la risposta è breve. Moltiplica tra loro le prime componenti, poi le seconde, e così via, e somma i prodotti: questo è il prodotto scalare. Calcola la lunghezza di ciascun vettore, cioè la radice quadrata della somma dei quadrati delle sue componenti. Dividi il prodotto scalare per il prodotto delle due lunghezze e ottieni il coseno dell'angolo. L'angolo stesso è l'arcocoseno di quel numero. Passare dal coseno invece che dall'angolo è tutto il trucco, perché il coseno è ciò che il prodotto scalare produce naturalmente, ed è anche il numero che vale la pena guardare: va da 1 per due vettori che puntano nella stessa direzione, passa per 0 quando sono ad angolo retto e arriva a −1 per due vettori che puntano in direzioni opposte. Questi tre valori sono quelli che la gente riconosce davvero, e nessuno di loro richiede una calcolatrice. I vettori perpendicolari, il caso per cui questa pagina viene aperta più spesso, sono esattamente quelli con coseno uguale a zero. Tutto il resto finisce in mezzo, e la pagina lo riporta a quattro cifre decimali in gradi e in radianti insieme, dato che metà delle formule in circolazione vuole il secondo e quasi tutti leggono il primo. Un solo ingresso viene rifiutato invece che calcolato: il vettore nullo, la cui lunghezza è zero e che quindi non ha alcuna direzione. Dividere per la sua lunghezza per ottenere un coseno significherebbe dividere per zero, e restituire un angolo di zero gradi vorrebbe dire affermare che punta nella stessa direzione del tuo vettore: la pagina declina l'intero calcolo.
Coppie di vettori e angolo tra loro
| Vettore u | Vettore v | Coseno dell'angolo | Angolo (°) |
|---|---|---|---|
| 1 1 0 | 1 0 1 | 0.5 | 60 |
| 1 0 | 0 1 | 0 | 90 |
| 1 0 0 | 1 0 0 | 1 | 0 |
| -1 0 0 | 1 0 0 | -1 | 180 |
| 1 1 | 1 0 | 0.7071 | 45 |
| 3 4 0 | 4 3 0 | 0.96 | 16.2602 |
| 1 2 2 | 2 2 1 | 0.8889 | 27.266 |
| 2 -3 | 4 5 | -0.3032 | 107.6501 |
Otto coppie, e la prima riga è quella con cui la pagina si apre. La colonna del coseno è il motivo per cui la tabella esiste: la sola colonna dell'angolo nasconde lo schema, e con il coseno accanto i tre valori speciali saltano subito all'occhio. La prima riga è un coseno di esattamente 0,5 che dà esattamente 60 gradi, e la sesta è un coseno di 0,96 che dà 16,26 gradi: tra queste due righe c'è tutto l'avvertimento di questa pagina, cioè che il coseno comprime l'intervallo da 0 a 90 gradi dentro i valori da 1 a 0 e lo comprime in modo non uniforme. La seconda riga è l'angolo retto più semplice che esista, la terza è un vettore contro se stesso, e insieme danno i due estremi dell'intervallo del coseno, 0 e 1, mentre la quarta fornisce il terzo estremo, −1, accoppiando un vettore con il suo opposto. Quelle tre righe messe insieme sono l'intera scala. La quinta riga è una coppia a 45 gradi, il mezzo angolo retto che ricorre di continuo nella pratica, e la settima è quella tridimensionale disordinata: entrambe le lunghezze valgono esattamente 3, ma il prodotto scalare è 8, quindi il coseno è 8 ÷ 9 e si ripete all'infinito. L'ottava riga è un caso ottuso con componenti di segno misto: un coseno di −0,3032 e un angolo di 107,6501, che concordano come devono, dato che un coseno negativo e un angolo sotto i 90 gradi non possono essere giusti entrambi. Il valore in radianti di proposito non è una colonna: è lo stesso angolo in un'altra notazione, e una quinta colonna non direbbe nulla di nuovo. Ogni valore viene ricalcolato quando la pagina viene costruita, e gli spazi nelle prime due colonne sono i separatori, non parte dei numeri.
Formula
cos θ = (u · v) ÷ (|u| × |v|) θ = arccos(cos θ) u · v = u₁v₁ + u₂v₂ + … + uₙvₙ
- Vettore u
- Il primo vettore, scritto come le sue componenti separate da spazi o da virgole: 1 1 0 per tre dimensioni, 0 3 per due, o quante ne servono. Non c'è un numero fisso di caselle perché la pagina accetta qualsiasi dimensione, e i due vettori devono avere lo stesso numero di componenti tra loro
- Vettore v
- Il secondo vettore, scritto allo stesso modo e con lo stesso numero di componenti del primo. Scambiare i due vettori non cambia nulla: l'angolo tra loro è lo stesso in un verso e nell'altro
- u · v
- Il prodotto scalare, che questa pagina usa ma non stampa: moltiplica le due prime componenti, le due seconde e così via, poi somma i prodotti. Qui è la materia prima dell'angolo, non una risposta a sé stante
- |u| e |v|
- La lunghezza di ciascun vettore, nell'unità in cui sono state misurate le componenti: la radice quadrata della somma dei quadrati delle sue componenti. Sono i due numeri per cui si divide il prodotto scalare, e ognuno riguarda solo il proprio vettore: uno dei due può essere grande senza dire nulla sull'altro
- cos θ
- Il coseno dell'angolo tra i due vettori: il prodotto scalare diviso per il prodotto delle due lunghezze. Va da 1 per vettori che puntano nella stessa direzione, passa per 0 ad angolo retto e arriva a −1 per vettori che puntano in direzioni opposte, e non esce mai da questo intervallo. È il numero da cui l'angolo viene effettivamente calcolato, ed è per questo che la pagina lo stampa
- θ
- L'angolo tra i due vettori, in gradi, da 0 quando puntano nella stessa direzione, passando per 90 quando sono perpendicolari, fino a 180 quando puntano in direzioni opposte. È l'arcocoseno del numero qui sopra, quindi ne eredita l'intervallo e non può mai uscirne
- Radianti
- Lo stesso angolo scritto nell'altro modo: 180 gradi sono π radianti, 90 è la metà, e il risultato è un numero puro senza unità. Le formule dell'analisi matematica e quelle di quasi tutti i linguaggi di programmazione vogliono i radianti, quindi la pagina dà entrambi invece di costringerti a moltiplicare per π e dividere per 180
- Gradi
- L'unità del risultato principale, e l'unico risultato della pagina che abbia un'unità. Il coseno e il valore in radianti sono numeri puri
- Quattro cifre decimali
- L'ampiezza con cui viene scritto ogni risultato. Il coseno è esatto solo nei casi speciali — 0, 0,5, 1 e −1 — e l'angolo è esatto solo quando il coseno è uno di quelli, quindi quasi ogni riga di questa pagina porta numeri arrotondati
Questa è la pagina da aprire quando vuoi l'angolo in sé e non soltanto la relazione tra due direzioni. Tre angoli vale la pena riconoscerli senza fare aritmetica: un coseno di 1 significa 0 gradi e vettori che puntano nella stessa direzione, un coseno di 0 significa 90 gradi e vettori perpendicolari, un coseno di −1 significa 180 gradi e vettori che puntano in direzioni opposte. Qualsiasi altro valore è un angolo vero e la pagina lo dà a quattro cifre decimali. L'uso reale più comune è confrontare una direzione con una di riferimento: di quanto è girato un vento rispetto al nord, di quanto ha ruotato una telecamera, di quanto si è scostata una direzione misurata da quella che avrebbe dovuto avere. I problemi di geometria con due direzioni note sono lo stesso calcolo, e lo è anche l'angolo tra due rette una volta che hai scritto ciascuna come vettore. Il controllo di buon senso su qualsiasi risposta è che il coseno e l'angolo devono raccontare la stessa storia: un coseno positivo va sempre con un angolo sotto i 90 gradi, un coseno negativo con uno sopra, e un coseno di zero con esattamente 90. Se i due non concordano, le componenti non sono quelle che credevi. Il risultato in radianti c'è per il caso in cui l'angolo sta per entrare in una formula o in una riga di codice, che quasi sempre vogliono i radianti, e la conversione a mano è la fonte tipica degli errori di segno e dei fattori 180 sbagliati.
Esempi svolti
1 1 0 e 1 0 1
- Prodotto scalare: 1 × 1 + 1 × 0 + 0 × 1 = 1
- Lunghezza di u: √(1 + 1 + 0) = √2 = 1,414214
- Lunghezza di v: √(1 + 0 + 1) = √2 = 1,414214
- Coseno: 1 ÷ (1,414214 × 1,414214) = 1 ÷ 2 = 0,5
- Angolo: l'arcocoseno di 0,5 è 60 gradi, cioè 60 × π ÷ 180 = 1,047198 radianti
L'ingresso con cui la pagina si apre, e la riga più pulita che ci sia: il coseno viene esattamente un mezzo e l'angolo esattamente 60 gradi. Nota che il prodotto scalare, 1, sul pannello non compare da nessuna parte: questa pagina stampa il coseno e l'angolo, e il prodotto scalare è il passaggio intermedio. Le due lunghezze sono entrambe la radice di due, quindi moltiplicate danno esattamente 2, ed è per questo che coseno e angolo escono esatti invece che arrotondati.
3 4 0 e 4 3 0
- Prodotto scalare: 3 × 4 + 4 × 3 + 0 × 0 = 24
- Lunghezza di ciascuno: √(9 + 16) = 5, dato che la terza componente è zero
- Coseno: 24 ÷ (5 × 5) = 0,96
- Angolo: l'arcocoseno di 0,96 è 16,2602 gradi, cioè 0,2838 radianti
La riga che mostra perché vale la pena stampare il coseno. Un coseno di 0,96 suona come due vettori quasi identici, e l'angolo è di 16,26 gradi: circa un sesto di un angolo retto. Il coseno comprime tutto l'intervallo da 0 a 90 gradi nei numeri tra 1 e 0, e lo fa in modo non uniforme, ed è per questo che leggerlo come una frazione di qualcosa porta fuori strada. Qui entrambe le lunghezze valgono esattamente 5, quindi il triangolo 3-4-5 sta facendo il suo solito lavoro.
1 0 e 0 1
- Prodotto scalare: 1 × 0 + 0 × 1 = 0
- Lunghezza di ciascuno: 1
- Coseno: 0 ÷ 1 = 0
- Angolo: l'arcocoseno di zero è esattamente 90 gradi, cioè 1,570796 radianti
La risposta per cui la pagina viene aperta più spesso, e il caso esatto: un coseno di zero significa vettori perpendicolari, e l'angolo torna esattamente 90 invece che un valore arrotondato. Questi due sono la coppia perpendicolare più semplice che esista, uno lungo l'asse x e uno lungo l'asse y. Il valore in radianti, 1,5708, è π ÷ 2.
-1 0 0 e 1 0 0
- Prodotto scalare: (−1) × 1 + 0 × 0 + 0 × 0 = −1
- Lunghezza di ciascuno: 1
- Coseno: −1 ÷ 1 = −1
- Angolo: l'arcocoseno di −1 è esattamente 180 gradi, cioè 3,141593 radianti
L'altro estremo dell'intervallo. Un coseno di −1 è l'angolo più grande che due vettori possano formare, 180 gradi, e il valore in radianti è π. Due vettori che puntano in direzioni esattamente opposte sono pur sempre due vettori, e l'angolo tra loro non è zero: questa è la riga da guardare quando una risposta di 180 sembra sbagliata. Non lo è: opposto è una relazione, esattamente come parallelo.
2 -3 e 4 5
- Prodotto scalare: 2 × 4 + (−3) × 5 = 8 − 15 = −7
- Lunghezza di u: √(4 + 9) = √13 = 3,605551
- Lunghezza di v: √(16 + 25) = √41 = 6,403124
- Coseno: −7 ÷ (3,605551 × 6,403124) = −7 ÷ 23,086793 = −0,303201
- Angolo: l'arcocoseno di −0,303201 è 107,6501 gradi, cioè 1,8788 radianti
Una risposta ottusa, che è il caso in cui si cade più spesso: due vettori possono formare un angolo maggiore di 90 gradi, e lo fanno ogni volta che il prodotto scalare è negativo. Una componente di u è negativa, ed è così che si scrive un vettore che punta a sinistra o verso il basso. Il coseno di −0,3032 è piccolo, ma il suo segno è tutto il messaggio: dice che i due vettori si allontanano l'uno dall'altro, e l'angolo di 107,6501 gradi è d'accordo.
Limiti
I due vettori devono avere lo stesso numero di componenti, e una coppia che non corrisponde viene rifiutata invece che riempita di zeri. Il vettore nullo viene rifiutato del tutto: un vettore con tutte le componenti a zero non ha direzione, quindi l'angolo tra lui e qualsiasi altra cosa è indefinito, e la pagina declina l'intero calcolo invece di mostrare un angolo di zero che si leggerebbe come «punta nella stessa direzione». Le componenti si leggono come numeri normali: una virgola seguita da uno spazio separa le componenti, una virgola senza spazio dopo si legge come separatore decimale (1,5 è uno e mezzo), e un raggruppamento delle migliaia viene rifiutato invece che indovinato: scrivi 1500, non 1.500. Ogni vettore accetta fino a 200 componenti, molto più di qualsiasi caso scritto a mano ma meno delle dimensioni che userebbe una pipeline di dati. Il prodotto scalare non è tra i risultati, di proposito: è il passaggio da cui l'angolo viene calcolato, e la pagina che lo stampa come risposta è un'altra. Le quattro cifre decimali sono un'ampiezza di visualizzazione e non una dichiarazione di precisione, e entrambi i risultati sono calcolati dalle lunghezze non arrotondate, quindi moltiplicare tra loro i valori stampati può non riprodurre esattamente l'angolo stampato. Nulla in questa pagina sa in che cosa siano misurate le componenti: gli ingressi sono numeri puri, e lo sono anche il coseno e il valore in radianti, con i gradi come unica unità presente.
Domande frequenti
- Come si scrivono le componenti?
- Separale con spazi oppure con una virgola e uno spazio: 1 1 0 e 1, 1, 0 funzionano entrambi. Una virgola tra due cifre senza spazio dopo si legge come separatore decimale (1,5 è uno e mezzo); un raggruppamento delle migliaia come 1.500 viene rifiutato invece che indovinato, quindi scrivi 1500. I due vettori devono avere lo stesso numero di componenti, e non c'è un limite a quante ne abbiano purché coincidano: due dimensioni e tre dimensioni sono la stessa pagina.
- A che cosa serve il coseno dell'angolo?
- È il numero da cui l'angolo viene calcolato, ed è più facile da leggere dell'angolo nei tre casi che contano. Un coseno di 1 significa che i vettori puntano nella stessa direzione, 0 che sono perpendicolari e −1 che sono opposti. Qualsiasi valore intermedio è un angolo reale e la pagina lo dà in gradi e in radianti.
- Come faccio a capire se due vettori sono perpendicolari?
- Il loro coseno dell'angolo è zero, e la pagina leggerà esattamente 90 gradi. Quella verifica non ha bisogno di nessuna delle funzioni trigonometriche usate dal risultato in gradi: è vera esattamente quando il prodotto scalare è zero, il che richiede solo le moltiplicazioni. Questa pagina mostra il coseno proprio perché il caso ad angolo retto sia visibile senza calcolare nulla.
- Perché l'angolo non supera mai i 180 gradi?
- Perché il coseno dell'angolo è limitato tra −1 e 1, e l'arcocoseno restituisce soltanto valori da 0 a 180 gradi. Un angolo di 180 gradi significa che i due vettori puntano in direzioni esattamente opposte, e tra due direzioni non esiste un angolo di 200 gradi: 200 e 160 descrivono la stessa coppia di frecce.
- Perché ci sono due risultati per l'angolo, gradi e radianti?
- Perché i destinatari sono due diversi. Le persone leggono i gradi; le formule e i linguaggi di programmazione vogliono quasi sempre i radianti, e 180 gradi sono π radianti. Stamparli entrambi significa che nessuno deve moltiplicare per π e dividere per 180, che è la fonte tipica degli errori di fattore 180. Il valore in radianti è un numero puro senza unità.
- Perché rifiuta un vettore tutto di zeri?
- Perché il vettore nullo non ha direzione, quindi l'angolo tra lui e qualsiasi altra cosa è indefinito. La sua lunghezza è zero e il coseno è il prodotto scalare diviso per il prodotto delle due lunghezze, quindi calcolarlo significherebbe dividere per zero. Una pagina che restituisse 0 gradi starebbe dicendo che punta nella stessa direzione del tuo vettore, cioè affermerebbe qualcosa su una direzione che non esiste.
Riferimenti
- Dot product — the sum of the products of corresponding components, and the identity equating it to the two lengths times the cosine of the angle, which is the equation this page solves backwards — Wolfram MathWorld (United States)
- Vector — the object with a magnitude and a direction whose components this page reads, and whose length is the square root of the sum of the squares of those components — Wolfram MathWorld (United States)
- Perpendicular — the right-angle relation, the one case where the cosine is exactly zero and the angle exactly 90 degrees, and the reason this calculation is worth doing at all — Wolfram MathWorld (United States)
- Inverse cosine — MathWorld (the arccos function that turns the cosine back into the angle, and the range from 0 to 180 degrees that makes the answer unique) — Wolfram MathWorld