Как найти угол между двумя координатами

light2041

Добрый день! У меня не получается решить небольшую математическую задачку, поэтому прошу помощи сообщества.

Итак, у меня есть сервис отслеживания транспорта. Для каждой машины на карте нужно установить угол поворота через transform: rotate(<угол>).

Для каждой машины у меня есть ее прошлая координата X1, Y1 и текущая координата X2, Y2.

Вопрос. Какая формула позволит высчитывать этот угол?


  • Вопрос задан

    более трёх лет назад

  • 13504 просмотра

Пригласить эксперта

alpha = arccos (deltaX / deltaY)
PS а «высшая математика» в тэгах к вопросу — это маркетинг? :)

UPD: ойблин, пардон… все учителя математики моей юности, простите меня :/

конечно же alpha = atan ( deltaY / deltaX )
ну а при deltaX=0, alpha = sign(deltaY) * pi/2;

Нарисуйте это на бумажке — и поймете. По сути у вас есть прямоугольный треугольник, где гипотенуза — отрезок от (x1,y1) до (x2,y2), а катеты — проекции на соответствующие оси. Далее нужный угол находите из формул соотношения углов и сторон прямоугольного треугольника.

Итак, у меня есть сервис отслеживания транспорта.

У меня не получается решить небольшую математическую задачку,

Сдайте дидактический материал и идите учить уроки!

X = x0 + (x - x0) * cos(a) - (y - y0) * sin(a);
Y = y0 + (y - y0) * cos(a) + (x - x0) * sin(a);

Здесь про угол между векторами
угол(a, b) = arccos((a * b) / (|a| * |b|))
a * b — скалярное произведение (сумма произведений координат)
|a| — длина вектора (корень из суммы квадратов его координат)

Как я понял, вам нужен угол вектора (x1,y1)→(x2,y2).
Любой школьный «арк», если им действовать в лоб, в определённом диапазоне углов не определён или неустойчив.
Но именно для этого в большинстве языков присутствует функция
atan2(y2 - y1, x2 - x1)

Если задача звучит именно так, то она сводится к нахождению угла между векторами (см. скалярное произведение векторов):

const getScalarProduct = ([xA, ...restA], [xB, ...restB]) => 
   (restA.length === 0 || restB.length === 0)
      ? xA * xB
      : xA * xB + getScalarProduct(restA, restB)
  
const getSquareModule = ([x, ...rest]) =>
   (rest.length === 0)
      ? x * x
      : x * x + getSquareModule(rest)

const getModule = (A) => Math.sqrt(getSquareModule(A))
  
const getCosOfAngle = (A, B) => getScalarProduct(A, B) / (getModule(A) * getModule(B))

getCosOfAngle([1, 0],[0, 1]) — двумерный случай, но можно находить угол для любой размерности

P.S.: код на JavaScript, функция getCosOfAngle возвращает косинус угла

Никогда не поздно, возможные исключения за тобой.

<?php 
	$x1 = 10;
	$y1 = 10;
	$x2 = 5;
	$y2 = 5;

	$alpha = rad2deg(atan2($y1 > $y2 ? $y1 - $y2 : ($y1 == $y2 ? $y1 : $y2 - $y1), $x1 > $x2 ? $x1 - $x2 : ($x1 == $x2 ? $x1 : $x2 - $x1)));

	echo($alpha)
?>

UPD: В этом решении можно получить угол, если координаты по отдаленности будут меняться между собой, решение будет правильным.

UPD2: Пример, если это по-типу радара и углы 0 — 180 и 0 — -180:

$alpha = (($y1 > $y2 ? 180 : -180) - rad2deg(atan2($y1 - $y2, $x1 - $x2))) * -1;


  • Показать ещё
    Загружается…

29 мая 2023, в 01:21

5000 руб./за проект

29 мая 2023, в 00:56

1500 руб./за проект

28 мая 2023, в 22:23

1000 руб./за проект

Минуточку внимания

Нахождение угла между векторами с помощью скалярного произведения

Косинус угла между векторами a⃗=(a1;a2)vec{a}=(a_{1};a_{2}) и b⃗=(b1;b2)vec{b}=(b_{1};b_{2}) может быть вычислен по формуле

cos⁡(a⃗,b⃗^)=a⃗⋅b⃗∣a⃗∣⋅∣b⃗∣=a1⋅b1+a2⋅b2a12+a22⋅b12+b22.cosleft(widehat{vec{a},vec{b}}right)=frac{vec{a}cdotvec{b}}{|vec{a}|cdot|vec{b}|}= frac{a_{1}cdot b_{1}+a_{2}cdot b_{2}}{sqrt{a_{1}^{2}+a_{2}^{2}}cdotsqrt{b_{1}^{2}+b_{2}^{2}}}.

Следовательно, угол между векторами a⃗=(a1;a2)vec{a}=(a_{1};a_{2}) и b⃗=(b1;b2)vec{b}=(b_{1};b_{2}) может быть вычислен по формуле

(a⃗,b⃗^)=arccos⁡(a⃗⋅b⃗∣a⃗∣⋅∣b⃗∣)=arccos⁡(a1⋅b1+a2⋅b2a12+a22⋅b12+b22).left(widehat{vec{a},vec{b}}right)=arccosleft(frac{vec{a}cdotvec{b}}{|vec{a}|cdot|vec{b}|}right)=arccosleft(frac{a_{1}cdot b_{1}+a_{2}cdot b_{2}}{sqrt{a_{1}^{2}+a_{2}^{2}}cdotsqrt{b_{1}^{2}+b_{2}^{2}}}right).

Пример 1

Найти угол между векторами a⃗=(1;−1)vec{a}=(1; -1) и b⃗=(1;2).vec{b}=(1; 2).

cos⁡(a⃗,b⃗^)=a⃗⋅b⃗∣a⃗∣⋅∣b⃗∣=1⋅1+(−1)⋅212+(−1)2⋅12+22=1−22⋅5=−110.cosleft(widehat{vec{a},vec{b}}right)=frac{vec{a}cdot vec{b}}{left | vec{a} right |cdot left | vec{b} right |}=frac{1cdot1+(-1)cdot2}{sqrt{1^{2}+(-1)^{2}}cdot sqrt{1^{2}+2^{2}}}=frac{1-2}{sqrt{2}cdotsqrt{5}}=frac{-1}{sqrt{10}}.

(a⃗,b⃗^)=arccos⁡(−110)=arccos⁡(−1010).left ( widehat{vec{a},vec{b}} right )=arccosleft ( frac{-1}{sqrt{10}} right )=arccosleft ( frac{-sqrt{10}}{10} right ).

Ответ: (a⃗,b⃗^)=arccos⁡(−1010).left ( widehat{vec{a},vec{b}} right )=arccosleft ( frac{-sqrt{10}}{10} right).

Пример 2

Найти угол между векторами a⃗=(2;3)vec{a}=(2; 3) и b⃗=(3;1).vec{b}=(3; 1).

cos⁡(a⃗,b⃗^)=a⃗⋅b⃗∣a⃗∣⋅∣b⃗∣=2⋅3+3⋅122+32⋅32+12=6+313⋅10=9130=9130130.cosleft(widehat{vec{a},vec{b}}right)=frac{vec{a}cdot vec{b}}{left | vec{a} right |cdot left | vec{b} right |}=frac{2cdot3+3cdot1}{sqrt{2^{2}+3^{2}}cdot sqrt{3^{2}+1^{2}}}=frac{6+3}{sqrt{13}cdotsqrt{10}}=frac{9}{sqrt{130}}=frac{9sqrt{130}}{130}.

(a⃗,b⃗^)=arccos⁡(9130130).left ( widehat{vec{a},vec{b}} right )=arccosleft ( frac{9sqrt{130}}{130} right ).

Ответ: (a⃗,b⃗^)=arccos⁡(9130130).left ( widehat{vec{a},vec{b}} right )=arccos left ( frac{9sqrt{130}}{130} right ).

Косинус угла между векторами a⃗=(a1;a2;a3)vec{a}=(a_{1};a_{2};a_{3}) и b⃗=(b1;b2;b3)vec{b}=(b_{1};b_{2};b_{3}) может быть вычислен по формуле

cos⁡(a⃗,b⃗^)=a⃗⋅b⃗∣a⃗∣⋅∣b⃗∣=a1⋅b1+a2⋅b2+a3⋅b3a12+a22+a32⋅b12+b22+b32.cosleft(widehat{vec{a},vec{b}}right)=frac{vec{a}cdotvec{b}}{|vec{a}|cdot|vec{b}|}= frac{a_{1}cdot b_{1}+a_{2}cdot b_{2}+a_{3}cdot b_{3}}{sqrt{a_{1}^{2}+a_{2}^{2}+a_{3}^{2}}cdotsqrt{b_{1}^{2}+b_{2}^{2}+b_{3}^{2}}}.

Следовательно, угол между векторами a⃗=(a1;a2;a3)vec{a}=(a_{1};a_{2};a_{3}) и b⃗=(b1;b2;b3)vec{b}=(b_{1};b_{2};b_{3}) может быть вычислен по формуле

(a⃗,b⃗^)=arccos⁡(a⃗⋅b⃗∣a⃗∣⋅∣b⃗∣)=arccos⁡(a1⋅b1+a2⋅b2+a3⋅b3a12+a22+a32⋅b12+b22+b32).left(widehat{vec{a},vec{b}}right)=arccosleft(frac{vec{a}cdotvec{b}}{|vec{a}|cdot|vec{b}|}right)=arccosleft(frac{a_{1}cdot b_{1}+a_{2}cdot b_{2}+a_{3}cdot b_{3}}{sqrt{a_{1}^{2}+a_{2}^{2}+ a_{3}^{2}}cdotsqrt{b_{1}^{2}+b_{2}^{2}+ b_{3}^{2}}}right).

Пример 3

Найти угол между векторами a⃗=(1;2;3)иb⃗=(1;−2;3).vec{a}=(1; 2; 3) и vec{b}=(1; -2; 3).

cos⁡(a⃗,b⃗^)=a⃗⋅b⃗∣a⃗∣⋅∣b⃗∣=1⋅1+2⋅(−2)+3⋅312+22+32⋅12+(−2)2+32=1−4+914⋅14=614=37.cosleft(widehat{vec{a},vec{b}}right)=frac{vec{a}cdot vec{b}}{left | vec{a} right |cdot left | vec{b} right |}=frac{1cdot1+2cdot(-2)+3cdot3}{sqrt{1^{2}+2^{2}+3^{2}}cdot sqrt{1^{2}+(-2)^{2}+3^{2}}}=frac{1-4+9}{sqrt{14}cdotsqrt{14}}=frac{6}{14}=frac{3}{7}.

(a⃗,b⃗^)=arccos⁡(37).left(widehat{vec{a},vec{b}}right)=arccosleft ( frac{3}{7} right ).

Ответ: (a⃗,b⃗^)=arccos⁡(37).left(widehat{vec{a},vec{b}}right)=arccosleft ( frac{3}{7} right ).

Пример 4

Найти угол между векторами a⃗=(2;−1;−2)vec{a}=(2; -1; -2) и b⃗=(1;3;−2).vec{b}=(1; 3; -2).

cos⁡(a⃗,b⃗^)=a⃗⋅b⃗∣a⃗∣⋅∣b⃗∣=2⋅1+(−1)⋅3+(−2)⋅(−2)22+(−1)2+(−2)2⋅12+32+(−2)2=2−3+49⋅14=33⋅14=114=1414.cosleft(widehat{vec{a},vec{b}}right)=frac{vec{a}cdot vec{b}}{left | vec{a} right |cdot left | vec{b} right |}=frac{2cdot1+(-1)cdot3+(-2)cdot(-2)}{sqrt{2^{2}+(-1)^{2}+(-2)^{2}}cdot sqrt{1^{2}+3^{2}+(-2)^{2}}}=frac{2-3+4}{sqrt{9}cdotsqrt{14}}=frac{3}{3cdotsqrt{14}}=frac{1}{sqrt{14}}=frac{sqrt{14}}{14}.

(a⃗,b⃗^)=arccos⁡(1414).left(widehat{vec{a},vec{b}}right)=arccosleft ( frac{sqrt{14}}{14} right ).

Ответ: (a⃗,b⃗^)=arccos⁡(1414).left(widehat{vec{a},vec{b}}right)=arccosleft ( frac{sqrt{14}}{14} right ).

Нахождение угла между векторами с помощью векторного произведения

Синус угла между векторами можно вычислить по формуле: sin⁡(a⃗,b⃗^)=∣a⃗×b⃗∣∣a⃗∣⋅∣b⃗∣.sin(widehat{vec{a},vec{b}})=frac{left | vec{a}times vec{b} right |}{left | vec{a} right |cdotleft | vec{b} right |}.

Пример 1

Найти угол между векторами a⃗=(2;−1;2)vec{a}=(2;-1;2) и b⃗=(3;0;1).vec{b}=(3;0;1).

a⃗×b⃗=∣ijk2−12301∣=(−1−0)i−(2−6)j+(0+3)k=−i+4j+3k.vec{a}times vec{b}=begin{vmatrix}i&j&k\2&-1&2\3&0&1end{vmatrix}=(-1-0)i-(2-6)j+(0+3)k=-i+4j+3k.

∣a⃗×b⃗∣=(−1)2+42+32=1+16+9=26.left | vec{a}times vec{b} right |=sqrt{(-1)^{2}+4^{2}+3^{2}}=sqrt{1+16+9}=sqrt{26}.

∣a⃗∣=22+(−1)2+22=4+1+4=9=3.left | vec{a} right |=sqrt{2^{2}+(-1)^{2}+2^{2}}=sqrt{4+1+4}=sqrt{9}=3.

∣b⃗∣=32+02+12=9+0+1=10.left | vec{b} right |=sqrt{3^{2}+0^{2}+1^{2}}=sqrt{9+0+1}=sqrt{10}.

sin⁡(a⃗,b⃗^)=26310=132325=1335=6515.sin(widehat{vec{a},vec{b}})=frac{sqrt{26}}{3sqrt{10}}=frac{sqrt{13}sqrt{2}}{3sqrt{2}sqrt{5}}=frac{sqrt{13}}{3sqrt{5}}=frac{sqrt{65}}{15}.

(a⃗,b⃗^)=arcsin⁡(6515).(widehat{vec{a},vec{b}})=arcsinleft ( frac{sqrt{65}}{15} right ).

Ответ: (a⃗,b⃗^)=arcsin⁡(6515).(widehat{vec{a},vec{b}})=arcsinleft ( frac{sqrt{65}}{15} right ).

Пример 2

Найти угол между векторами a⃗=(1;1;3)vec{a}=(1;1;3) и b⃗=(0;1;1).vec{b}=(0;1;1).

a⃗×b⃗=∣ijk113011∣=(1−3)i−(1−0)j+(1−0)k=−2i−j+k.vec{a}times vec{b}=begin{vmatrix}i&j&k\1&1&3\0&1&1end{vmatrix}=(1-3)i-(1-0)j+(1-0)k=-2i-j+k.

∣a⃗×b⃗∣=(−2)2+(−1)2+12=4+1+1=6.left | vec{a}times vec{b} right |=sqrt{(-2)^{2}+(-1)^{2}+1^{2}}=sqrt{4+1+1}=sqrt{6}.

∣a⃗∣=12+12+32=1+1+9=11.left | vec{a} right |=sqrt{1^{2}+1^{2}+3^{2}}=sqrt{1+1+9}=sqrt{11}.

∣b⃗∣=02+12+12=0+1+1=2.left | vec{b} right |=sqrt{0^{2}+1^{2}+1^{2}}=sqrt{0+1+1}=sqrt{2}.

sin⁡(a⃗,b⃗^)=6112=32112=311=3311.sin(widehat{vec{a},vec{b}})=frac{sqrt{6}}{sqrt{11}sqrt{2}}=frac{sqrt{3}sqrt{2}}{sqrt{11}sqrt{2}}=frac{sqrt{3}}{sqrt{11}}=frac{sqrt{33}}{11}.

(a⃗,b⃗^)=arcsin⁡(3311).(widehat{vec{a},vec{b}})=arcsinleft ( frac{sqrt{33}}{11} right ).

Ответ: (a⃗,b⃗^)=arcsin⁡(3311).(widehat{vec{a},vec{b}})=arcsinleft ( frac{sqrt{33}}{11} right ).

Тест по теме “Как найти угол между двумя векторами”

Угол между векторами

Определение

Угол между векторами — это угол между отрезками, которые изображают эти две направляющие и которые отложены от одной точки пространства. Другими словами — это кратчайший путь, на который можно повернуть один из векторов вокруг его начала до положения общей направленности со вторым.

Угол между векторами

 

На изображении это α, который также можно обозначить следующим образом:

(left(widehat{overrightarrow a;overrightarrow b}right))

Осторожно! Если преподаватель обнаружит плагиат в работе, не избежать крупных проблем (вплоть до отчисления). Если нет возможности написать самому, закажите тут.

Как и любой другой угол, векторный может быть представлен в нескольких вариациях.

Острый:

Острый угол между векторами

 

Тупой:

Тупой угол между векторами

 

Прямой:

Прямой угол

 

С величиной (0^circ) (то есть, векторы сонаправлены):

0 градусов

 

С величиной (180^circ) (векторы направлены в противоположные стороны):

180 градусов

 

Нахождение угла между векторами

Как правило, угол между ( overrightarrow a) и (overrightarrow b) можно найти с помощью скалярного произведения или теоремы косинусов для треугольника, который был построен на основе двух этих направляющих.

Определение

Скалярное произведение — это число, которое равно произведению двух направляющих на косинус угла между ними.

Формула скалярного произведения:

(left(overrightarrow a;overrightarrow bright)=left|overrightarrow aright|timesleft|overrightarrow bright|timescosleft(widehat{overrightarrow a;overrightarrow b}right))

  1. Если α — острый, то СП (скалярное произведение) будет положительным числом (cos острого угла — положительное число).
  2. Если векторы имеют общую направленность, то есть угол между ними равен (0^circ), а косинус — 1, то СП будет тоже положительным.
  3. Если α — тупой, то скалярное произведение будет отрицательным (cos тупого угла — отрицательное число).
  4. Если α равен (180^circ), то есть векторы противоположно направлены, то СП тоже отрицательно, потому что cos данного угла равен 1.
  5. Если α — прямой, то СП равно 0, так как косинус (90^circ) равен 0.

В случае, если overrightarrow a и overrightarrow b не нулевые, можно найти косинус α между ними, опираясь на формулу:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|})

Расчет угла, если вектор задан координатами

В случае, когда направляющие расположены на двухмерной плоскости с заданными координатами в виде (overrightarrow a=left(a_x;a_yright)) и (overrightarrow b=left(b_x;b_yright)), то угол между ними можно найти следующим образом:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|}=frac{a_xcdot b_x+a_ycdot b_y}{sqrt{a_x^2+a_y^2}cdotsqrt{b_x^2+b_y^2}})

Если же координаты находятся в трехмерном пространстве и заданы в виде:

(overrightarrow a=left(a_x;a_y;a_zright))

( overrightarrow b=left(b_x;b_y;b_zright))

то формула принимает такой вид:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|}=frac{a_xcdot b_x+a_ycdot b_y+a_zcdot b_z}{sqrt{a_x^2+a_y^2+a_z^2}cdotsqrt{b_x^2+b_y^2+b_z^2}})

Расчет угла, если заданы три точки в прямоугольной системе координат

В этом случае проще будет разобраться с объяснениями сразу на примере.

Допустим, нам известны три точки и их координаты: A(3,-2), B(2,1), C (6,-1). Нужно найти косинус угла между (overrightarrow{AC}) и (overrightarrow{BC}).

Решение

Для начала найдем их координаты по известным координатам заданных точек:

(overrightarrow{AC}=(6-3, -1-(-2))=(3,1))

(overrightarrow{BC}=(6-2, -1-1)=(4,-2))

После этого уже можем применить формулу для определения косинуса угла на плоскости и подставить известные значения:

(cosleft(widehat{overrightarrow{AC};overrightarrow{BC}}right)=frac{(overrightarrow{AC};;overrightarrow{BC})}{left|overrightarrow{AC}right|cdotleft|overrightarrow{BC}right|}=frac{3cdot4+1cdot(-2)}{sqrt{3^2+1^2}cdotsqrt{4^2+{(-2)}^2}}=frac{10}{sqrt{10}cdot2sqrt5}=frac{10}{10sqrt2}=frac1{sqrt2})

Ответ: (cosleft(widehat{overrightarrow{AC};overrightarrow{BC}}right)=frac1{sqrt2}.)

Примеры решения задач

Для наглядности, взглянем на примеры решения задач по данной теме.

Задача 1

Известно, что (overrightarrow a) и (overrightarrow b). Их длины равны 3 и 6 соответственно, а скалярное произведение равно -9. Нужно найти cos угла между векторами и его величину.

Решение

Применим формулу:

( cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|})

Подставим известные значения:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{-9}{3cdot6}=-frac12)

Далее найдем угол между данными векторами:

(arccosleft(-frac12right)=frac{3pi}4)

Ответ: (left(widehat{overrightarrow a;overrightarrow b}right)=-frac12,;left(widehat{overrightarrow a;overrightarrow b}right)=frac{3pi}4.)

Задача 2

В пространстве даны координаты (overrightarrow a=(8; -11; 7)) и (overrightarrow b=(-2; -7; 8)). Вычислить угол α между ними.

Решение

Используем формулу для нахождения косинуса угла между направляющими в трехмерной системе координат:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|}=frac{a_xcdot b_x+a_ycdot b_y+a_zcdot b_z}{sqrt{a_x^2+a_y^2+a_z^2}cdotsqrt{b_x^2+b_y^2+b_z^2}})

Подставляем значения и получаем:

(cosleft(alpharight)=frac{8cdot(-2)+(-11)cdot(-7)+7cdot8}{sqrt{8^2+{(-11)}^2+7^2}cdotsqrt{{(-2)}^2+{(-7)}^2+8^2}}=frac{117}{sqrt{234}cdotsqrt{117}}=frac{sqrt{117}}{sqrt{234}}=frac1{sqrt2}=frac2{sqrt2})

Теперь находим угол α:

(alpha=arccosleft(frac2{sqrt2}right)=45^circ)

Ответ: (45^circ).

Задача 3

Известны (overrightarrow a=(3; 4)) и (overrightarrow b=(2; 5)). Найти угол между ними.

Решение

Для расчета используем формулу:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|}=frac{a_xcdot b_x+a_ycdot b_y}{sqrt{a_x^2+a_y^2}cdotsqrt{b_x^2+b_y^2}})

Подставим известные значения и получим:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|}=frac{a_xcdot b_x+a_ycdot b_y}{sqrt{a_x^2+a_y^2}cdotsqrt{b_x^2+b_y^2}}=frac{3cdot2+4cdot5}{sqrt{3^2+4^2}cdotsqrt{2^2+5^2}}=frac{26}{sqrt{25}cdotsqrt{29}}=frac{26}{5sqrt{29}})

Ответ: (cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{26}{5sqrt{29}})

Угол между векторами.

Формула вычисления угла между векторами

cos α = a · b
| a |·| b |

Примеры задач на вычисление угла между векторами

Примеры вычисления угла между векторами для плоских задачи

Решение: Найдем скалярное произведение векторов:

a · b = 3 · 4 + 4 · 3 = 12 + 12 = 24.

Найдем модули векторов:

| a | = √ 3 2 + 4 2 = √ 9 + 16 = √ 25 = 5
| b | = √ 4 2 + 3 2 = √ 16 + 9 = √ 25 = 5

Найдем угол между векторами:

cos α = a · b = 24 = 24 = 0.96
| a | · | b | 5 · 5 25

Решение: Найдем скалярное произведение векторов:

a · b = 5 · 7 + 1 · 5 = 35 + 5 = 40.

Найдем модули векторов:

| a | = √ 7 2 + 1 2 = √ 49 + 1 = √ 50 = 5√ 2
| b | = √ 5 2 + 5 2 = √ 25 + 25 = √ 50 = 5√ 2

Найдем угол между векторами:

cos α = a · b = 40 = 40 = 4 = 0.8
| a | · | b | 5√ 2 · 5√ 2 50 5

Примеры вычисления угла между векторами для пространственных задач

Решение: Найдем скалярное произведение векторов:

a · b = 3 · 4 + 4 · 4 + 0 · 2 = 12 + 16 + 0 = 28.

Найдем модули векторов:

| a | = √ 3 2 + 4 2 + 0 2 = √ 9 + 16 = √ 25 = 5
| b | = √ 4 2 + 4 2 + 2 2 = √ 16 + 16 + 4 = √ 36 = 6

Найдем угол между векторами:

cos α = a · b = 28 = 14
| a | · | b | 5 · 6 15

Решение: Найдем скалярное произведение векторов:

a · b = 1 · 5 + 0 · 5 + 3 · 0 = 5.

Найдем модули векторов:

| a | = √ 1 2 + 0 2 + 3 2 = √ 1 + 9 = √ 10
| b | = √ 5 2 + 5 2 + 0 2 = √ 25 + 25 = √ 50 = 5√ 2

Найдем угол между векторами:

cos α = a · b | a | · | b | = 5 √ 10 · 5√ 2 = 1 2√ 5 = √ 5 10 = 0.1√ 5

Любые нецензурные комментарии будут удалены, а их авторы занесены в черный список!

Добро пожаловать на OnlineMSchool.
Меня зовут Довжик Михаил Викторович. Я владелец и автор этого сайта, мною написан весь теоретический материал, а также разработаны онлайн упражнения и калькуляторы, которыми Вы можете воспользоваться для изучения математики.

Нахождение угла между векторами

Длина вектора, угол между векторами – эти понятия являются естественно-применимыми и интуитивно понятными при определении вектора как отрезка определенного направления. Ниже научимся определять угол между векторами в трехмерном пространстве, его косинус и рассмотрим теорию на примерах.

Для рассмотрения понятия угла между векторами обратимся к графической иллюстрации: зададим на плоскости или в трехмерном пространстве два вектора a → и b → , являющиеся ненулевыми. Зададим также произвольную точку O и отложим от нее векторы O A → = b → и O B → = b →

Углом между векторами a → и b → называется угол между лучами О А и О В .

Полученный угол будем обозначать следующим образом: a → , b → ^

Очевидно, что угол имеет возможность принимать значения от 0 до π или от 0 до 180 градусов.

a → , b → ^ = 0 , когда векторы являются сонаправленными и a → , b → ^ = π , когда векторы противоположнонаправлены.

Векторы называются перпендикулярными, если угол между ними равен 90 градусов или π 2 радиан.

Если хотя бы один из векторов является нулевым, то угол a → , b → ^ не определен.

Нахождение угла между векторами

Косинус угла между двумя векторами, а значит и собственно угол, обычно может быть определен или при помощи скалярного произведения векторов, или посредством теоремы косинусов для треугольника, построенного на основе двух данных векторов.

Согласно определению скалярное произведение есть a → , b → = a → · b → · cos a → , b → ^ .

Если заданные векторы a → и b → ненулевые, то можем разделить правую и левую части равенства на произведение длин этих векторов, получая, таким образом, формулу для нахождения косинуса угла между ненулевыми векторами:

cos a → , b → ^ = a → , b → a → · b →

Данная формула используется, когда в числе исходных данных есть длины векторов и их скалярное произведение.

Исходные данные: векторы a → и b → . Длины их равны 3 и 6 соответственно, а их скалярное произведение равно — 9 . Необходимо вычислить косинус угла между векторами и найти сам угол.

Решение

Исходных данных достаточно, чтобы применить полученную выше формулу, тогда cos a → , b → ^ = — 9 3 · 6 = — 1 2 ,

Теперь определим угол между векторами: a → , b → ^ = a r c cos ( — 1 2 ) = 3 π 4

Ответ: cos a → , b → ^ = — 1 2 , a → , b → ^ = 3 π 4

Чаще встречаются задачи, где векторы задаются координатами в прямоугольной системе координат. Для таких случаев необходимо вывести ту же формулу, но в координатной форме.

Длина вектора определяется как корень квадратный из суммы квадратов его координат, а скалярное произведение векторов равно сумме произведений соответствующих координат. Тогда формула для нахождения косинуса угла между векторами на плоскости a → = ( a x , a y ) , b → = ( b x , b y ) выглядит так:

cos a → , b → ^ = a x · b x + a y · b y a x 2 + a y 2 · b x 2 + b y 2

А формула для нахождения косинуса угла между векторами в трехмерном пространстве a → = ( a x , a y , a z ) , b → = ( b x , b y , b z ) будет иметь вид: cos a → , b → ^ = a x · b x + a y · b y + a z · b z a x 2 + a y 2 + a z 2 · b x 2 + b y 2 + b z 2

Исходные данные: векторы a → = ( 2 , 0 , — 1 ) , b → = ( 1 , 2 , 3 ) в прямоугольной системе координат. Необходимо определить угол между ними.

Решение

  1. Для решения задачи можем сразу применить формулу:

cos a → , b → ^ = 2 · 1 + 0 · 2 + ( — 1 ) · 3 2 2 + 0 2 + ( — 1 ) 2 · 1 2 + 2 2 + 3 2 = — 1 70 ⇒ a → , b → ^ = a r c cos ( — 1 70 ) = — a r c cos 1 70

  1. Также можно определить угол по формуле:

cos a → , b → ^ = ( a → , b → ) a → · b → ,

но предварительно рассчитать длины векторов и скалярное произведение по координатам: a → = 2 2 + 0 2 + ( — 1 ) 2 = 5 b → = 1 2 + 2 2 + 3 2 = 14 a → , b → ^ = 2 · 1 + 0 · 2 + ( — 1 ) · 3 = — 1 cos a → , b → ^ = a → , b → ^ a → · b → = — 1 5 · 14 = — 1 70 ⇒ a → , b → ^ = — a r c cos 1 70

Ответ: a → , b → ^ = — a r c cos 1 70

Также распространены задачи, когда заданы координаты трех точек в прямоугольной системе координат и необходимо определить какой-нибудь угол. И тогда, для того, чтобы определить угол между векторами с заданными координатами точек, необходимо вычислить координаты векторов в виде разности соответствующих точек начала и конца вектора.

Исходные данные: на плоскости в прямоугольной системе координат заданы точки A ( 2 , — 1 ) , B ( 3 , 2 ) , C ( 7 , — 2 ) . Необходимо определить косинус угла между векторами A C → и B C → .

Решение

Найдем координаты векторов по координатам заданных точек A C → = ( 7 — 2 , — 2 — ( — 1 ) ) = ( 5 , — 1 ) B C → = ( 7 — 3 , — 2 — 2 ) = ( 4 , — 4 )

Теперь используем формулу для определения косинуса угла между векторами на плоскости в координатах: cos A C → , B C → ^ = ( A C → , B C → ) A C → · B C → = 5 · 4 + ( — 1 ) · ( — 4 ) 5 2 + ( — 1 ) 2 · 4 2 + ( — 4 ) 2 = 24 26 · 32 = 3 13

Ответ: cos A C → , B C → ^ = 3 13

Угол между векторами можно определить по теореме косинусов. Отложим от точки O векторы O A → = a → и O B → = b → , тогда, согласно теореме косинусов в треугольнике О А В , будет верным равенство:

A B 2 = O A 2 + O B 2 — 2 · O A · O B · cos ( ∠ A O B ) ,

b → — a → 2 = a → + b → — 2 · a → · b → · cos ( a → , b → ) ^

и отсюда выведем формулу косинуса угла:

cos ( a → , b → ) ^ = 1 2 · a → 2 + b → 2 — b → — a → 2 a → · b →

Для применения полученной формулы нам нужны длины векторов, которые несложно определяются по их координатам.

Хотя указанный способ имеет место быть, все же чаще применяют формулу:

Как найти угол между векторами

Формула

Чтобы найти угол $phi$ между векторами нужно вначале найти косинус угла, а затем от него найти арккосинус, то есть:

$$phi=arccos (cos phi)$$

Косинус угла между векторами равен скалярному произведению этих векторов, деленному на произведение их длин. В случае если векторы заданны на плоскости и имеют координаты $bar=left(a_ ; a_right)$, $bar=left(b_ ; b_right)$, то косинус между ними вычисляется по формуле:

Примеры вычисления угла между векторами

Задание. Найти угол $phi$ между векторами $bar=(1 ; 3)$ и $bar=(4 ; 2)$

Решение. Сначала по формуле

найдем косинус угла между заданными векторами:

Тогда искомый угол равен

Ответ. $phi=45^<circ>$

Задание. Найти угол $phi$ между векторами $bar=(8 ;-7 ;-2)$ и $bar=(7 ;-11 ; 8)$

Решение. Найдем сначала косинус угла между заданными векторами, для этого воспользуемся формулой

Подставляя координаты векторов $bar$ и $bar$, получим

источники:

http://zaochnik.com/spravochnik/matematika/vektory/nahozhdenie-ugla-mezhdu-vektorami-primery-i-reshen/

http://www.webmath.ru/poleznoe/formules_13_8.php

Содержание:

  • Формула
  • Примеры вычисления угла между векторами

Формула

Чтобы найти угол $phi$ между векторами нужно вначале найти
косинус угла, а затем от него найти арккосинус, то есть:

$$phi=arccos (cos phi)$$

Косинус угла между векторами равен
скалярному произведению этих векторов, деленному на произведение их
длин.
В случае если векторы заданны на плоскости и имеют координаты
$bar{a}=left(a_{x} ; a_{y}right)$, $bar{b}=left(b_{x} ; b_{y}right)$, то косинус между ними вычисляется по формуле:

$$cos phi=frac{(bar{a}, bar{b})}{|bar{a}| cdot|bar{b}|}=frac{a_{x} cdot b_{x}+a_{y} cdot b_{y}}{sqrt{a_{x}^{2}+a_{y}^{2}} sqrt{b_{x}^{2}+b_{y}^{2}}}$$

В случае, если векторы заданы в пространстве, то есть
$bar{a}=left(a_{x} ; a_{y} ; a_{z}right)$ и $bar{b}=left(b_{x} ; b_{y} ; b_{z}right)$, то косинус угла между ними равен:

$$cos phi=frac{(bar{a}, bar{b})}{|bar{a}| cdot|bar{b}|}=frac{a_{x} cdot b_{x}+a_{y} cdot b_{y}+a_{z} cdot b_{z}}{sqrt{a_{x}^{2}+a_{y}^{2}+a_{z}^{2}} sqrt{b_{x}^{2}+b_{y}^{2}+b_{z}^{2}}}$$

Примеры вычисления угла между векторами

Пример

Задание. Найти угол $phi$ между векторами
$bar{a}=(1 ; 3)$ и $bar{b}=(4 ; 2)$

Решение. Сначала по формуле

$$cos phi=frac{(bar{a}, bar{b})}{|bar{a}| cdot|bar{b}|}=frac{a_{x} cdot b_{x}+a_{y} cdot b_{y}}{sqrt{a_{x}^{2}+a_{y}^{2}} sqrt{b_{x}^{2}+b_{y}^{2}}}$$

найдем косинус угла между заданными векторами:

$$begin{aligned} cos phi=frac{(bar{a}, bar{b})}{|bar{a}| cdot|bar{b}|}=& frac{1 cdot 4+3 cdot 2}{sqrt{1^{2}+3^{2}} cdot sqrt{4^{2}+2^{2}}}=frac{4+6}{sqrt{1+9} cdot sqrt{16+4}}=\ &=frac{10}{sqrt{10} cdot sqrt{20}=frac{1}{sqrt{2}}=frac{sqrt{2}}{2}} end{aligned}$$

Тогда искомый угол равен

$$phi=arccos left(frac{sqrt{2}}{2}right)=45^{circ}$$

Ответ. $phi=45^{circ}$

236

проверенных автора готовы помочь в написании работы любой сложности

Мы помогли уже 4 430 ученикам и студентам сдать работы от решения задач до дипломных на отлично! Узнай стоимость своей работы за 15 минут!

Пример

Задание. Найти угол $phi$ между векторами
$bar{a}=(8 ;-7 ;-2)$ и $bar{b}=(7 ;-11 ; 8)$

Решение. Найдем сначала косинус угла между заданными векторами, для этого воспользуемся формулой

$$cos phi=frac{(bar{a}, bar{b})}{|bar{a}| cdot|bar{b}|}=frac{a_{x} cdot b_{x}+a_{y} cdot b_{y}+a_{z} cdot b_{z}}{sqrt{a_{x}^{2}+a_{y}^{2}+a_{z}^{2}} cdot sqrt{b_{x}^{2}+b_{y}^{2}+b_{z}^{2}}}$$

Подставляя координаты векторов
$bar{a}$ и $bar{b}$, получим

$$begin{aligned} cos phi=frac{(bar{a}, bar{b})}{|bar{a}| cdot|bar{b}|}=frac{8 cdot 7+(-7) cdot(-11)+(-2) cdot 8}{sqrt{8^{2}+(-7)^{2}+(-2)^{2}} sqrt{7^{2}+(-11)^{2}+8^{2}}} &=\=frac{56+77-16}{sqrt{64+49+4} sqrt{49+121+64}}=frac{117}{sqrt{117} sqrt{234}}=\=frac{117}{117 sqrt{2}}=frac{1}{sqrt{2}}=frac{sqrt{2}}{2} end{aligned}$$

Угол же будет равен

$$phi=arccos left(frac{sqrt{2}}{2}right)=45^{circ}$$

Ответ. $phi=45^{circ}$

Читать дальше: как найти косинус угла между векторами.

Понравилась статья? Поделить с друзьями:
  • Как найти поверхностную плотность в физике
  • Как в яндексе найти человека в одноклассниках
  • Как найти среднее общее издержки
  • Как составить кроссворд по сказке аленький цветочек
  • Как найти сколько нуклонов