Нахождение угла между векторами: понятие, правила
Заголовок статьи дает много информации о материале, который будет изложен далее. Он достаточно прост для понимания, однако важный и нужный в дальнейшем обучении. На его основе будут формулироваться все следующие понятия и решаться различные задачи на плоскости, осуществляться вычисления.
Однако, чтобы решать математические и физические задачи, такого представления недостаточно. Данные понятия следует определить более строго, точно следуя всем правилам математической науки.
Воспользуемся графической иллюстрацией. Это нам поможет рассмотрение вопроса сделать более наглядным. Для отличия от скалярных величин, будем обозначать векторы жирным шрифтом.
Пусть имеются два ненулевых вектора a и b. На плоскости они или в трёхмерном пространстве сейчас не особо важно. Пусть наши векторы OA = a и OB = b имеют общее начало в некоторой точке O.
Определение 1
Под углом между векторами a и b понимается угол между двумя лучами OA и OB. Обозначим его как (a, b), т. е. курсивом и жирным одновременно.
Ясно, что угол между нашими векторами может принимать значения от нуля градусов до 180 градусов. Часто в математике углы обозначают не в градусах, а в радианах. Угол в 90 градусов равен π/2 радиан. Угол в 180 градусов, как не трудно предположить равняется π радиан.
Угол между a и b равен нулю градусам, когда они являются сонаправленными, и 180 градусам или π радиан, когда противоположно направлены.
Определение 2
Векторы a и b перпендикулярны, если угол между ними составляет π/2 радиан.
В случае, когда один из векторов нулевой, угол между ними считается неопределённым.
О нахождение угла между векторами
Нахождение угла между векторами или (что по сути тоже самое) нахождение косинуса угла между векторами можно осуществить с помощью скалярного произведения векторов или воспользовавшись теоремой косинусов для треугольника на указанных векторах.
Напомним, что скалярное произведение a и b есть результат умножения их длин на косинус угла между векторами. Формулой это записывается так:
(a, b) = a*b*cos (a, b)
Исходим из того что ни один из векторов a и b не равен нулю. В этом случае косинус можно найти просто, разделив скалярное произведение на длины векторов.
cos (a, b) = (a, b)/(a*b)
Это есть формула нахождения косинуса угла между векторами. Провести нахождение угла между двумя векторами после этого труда не составляет.
Нет времени решать самому?
Наши эксперты помогут!
Контрольная
| от 300 ₽ |
Реферат
| от 500 ₽ |
Курсовая
| от 1 000 ₽ |
Примеры задач на нахождение угла между векторами
Пример. 1 . Пусть у нас имеются векторы a и b. Пусть по длине один из них равен 4, а другой 8. Скалярное произведения наших векторов равно (-12). Подставляя указанные значения в формулу для косинуса, можно легко провести его вычисление
cos (a, b) = -12/(4*8) = — ½
Чтобы найти сам угол, нужно вычислить арккосинус полученного нами значения.
(a,b) = arcos (-1/2) = 3π/4
Ответ: Запишем его виде cos (a, b) = — ½, (a,b) = 3π/4.
Часто векторы задаются не так, как в примере выше, а с помощью координат в прямоугольной декартовой системе координат. Для этого требуется формула нахождения угла между векторами в координатной форме.
Напомним, что длина вектора определяется, как сумма квадратов его координат, а скалярное произведение векторов представляет собой сумму произведения их соответствующих координат.
a = (ax, ay), b = (bx, by)
\[ \cos (a, b)=\frac{\left(a_{x} * b_{x}+a_{y}^{*} b_{v}\right)}{\sqrt{a_{x}^{2}+a_{y}^{2}} \sqrt{b_{x}^{2}+b_{y}^{2}}} \]
Нахождение угла между векторами в трёхмерном пространстве происходит аналогичным образом, только мы имеем вектора с координатами не «x, y», а с координатами «x, y, z». {2}}} \]
Пример. 2. Пусть у нас имеется прямоугольная декартова система координат и в ней векторы
a = (3, 0, -4) и b = (1, 3, 4)
Мы должны провести нахождение угла между этими векторами по координатам.
Сделаем расчёт сначала по формуле для координат векторов, затем с помощью скалярного произведения векторов. В принципе обе формулы полностью равноценны между собой. Здесь мы намеренно расписываем всё максимально подробно.
Выясним, чему будет равно скалярное произведения наших векторов в их координатной записи. Перемножаем их x-координаты, y-координаты и z-координаты, после чего суммируем полученные значения.
3*1 + 0*3 + -4*4 = -13
Вычисляем корень квадратный из суммы 3*3 + 0*0 + (-4)*(-4) = 9 + 16 = 25. Он равняется 5.
Вычисляем корень квадратный из суммы 1*1 + 3*3 + (4)*(4) = 1 + 9 + 16 = 26. Он равен 5,09.
Перемножаем полученные значения, 5 * 5,09. В итоге с допустимой погрешностью получится 25.
Далее нам нужно -13 поделить на 25. Результат вычисления равен -0,52. После округления до первого знака после запятой будем иметь -0,5.
Arccos (-1/2) равен 120 градусам.
Теперь попытаемся получить тот же результат с помощью вычисления угла по скалярному произведению векторов.
Сначала вычисляем длину каждого из векторов.
- 3*3 + 0*0 + (-4)*(-4) = 9 + 16 = 25.
- 1*1 + 3*3 + (4)*(4) = 1 + 9 + 16 = 26.
Далее находим корни из этих чисел.
В нашем случае, несмотря на то что координаты каждого из векторов абсолютно разные, длина их получилась примерно одинаковой: 5 и 5,09. Последнее число, как мы делали выше, лучше округлить.
Далее вычисляем скалярное произведение
3*1 + 0*3 + -4*4 = -13
Как и ранее, делим -13 на 25. С допустимой погрешностью получаем значение (-1/2). Опять вычисляем арккосинус из этого числа. Он будет 120 градусов.
Ответ: Угол между векторами a = (3, 0, -4) и b = (1, 3, 4) равен 120 градусам.
Не редко встречаются задачи, в которых в прямоугольной декартовой системе координат заданы координаты трёх точек и нужно выяснить, чему равняется какой-нибудь угол. Для этого определяют угол между векторами, концами которых являются координаты этих точек.
Пример 3. На плоскости дана прямоугольная система координат, а на ней заданы точки A(2,-1), B(3,2), С (7,-2). Требуется найти косинус угла, разделяющего векторы
Находим координаты векторов.
- Для AС x = x2-x1= 7-2 =5, y = y2-y1 = -2 – (-1) = -1, т. е. получаем вектор AС (5, -1).
- Для ВС x = 7-3 =4, y = -2 – (-2) = -4, т. е. получаем вектор BC (4, -4).
Теперь, воспользовавшись соответствующей формулой, определим угол между векторами на плоскости.
cos (a, b) = (a, b)/(a*b)
Сначала вычисляем скалярное произведение AB и BC.
Затем корни из 5*5 + (-1)*(-1) и из 4*4 + (-4)*(-4).
Делим одно на другое.
Косинус в этом примере будет равен 0,832 (если более точно, то 3 делённое на 13 в корне).
Ответ: Искомый косинус угла равен 0,832.
Помимо сказанного, угол между векторами можно также определить по теореме косинусов. Отложите от точки 0 векторы OA = a и OB = b. Будет треугольник OAB. По теореме косинусов будет справедливо следующее равенство
AB2 = OA2+ OB2 – 2*OA*OB* cos (AOB)
Это равносильно
(b –a)2 = a + b – 2*a*b*cos (a,b)
Отсюда легко вывести формулу косинуса угла.
Нужно сначала перенести 2*a*b*cos (a,b) в левую сторону, затем (b –a)2 в правую и всё поделить на 2. В результате будем иметь
cos(
Чтобы использовать полученные формулы, нам нужно знать длины векторов, но это не проблема, т. к. по координатам они определяются очень легко.
Несмотря на то что указанный способ известен почти всем, чаще всего используется формула
cos(a,b) = (a,b)/a*b
Попробуйте и то, и другое. С теми формулами и способами, которыми вам будет удобнее, с теми и работайте. Для полного освоения темы в начале советуем натренироваться в решении задач всеми указанными в статье методами. Только после этого решайте, что для вас предпочтительнее и лучше идёт.
Калькулятор вычисления угла между векторами
Формула угла между векторами
Угол между двумя векторами
Рассмотрим понятие угла между двумя направлениями в пространстве.
Как и на плоскости, в пространстве направлением называется множество всех лучей, каждый из которых сонаправлен с данным. Таким образом, любой луч из данного множества сонаправленных лучей вполне определяет это направление (подобно тому, как любой направленный отрезок вполне определяет вектор, который он изображает). Поэтому направление в пространстве обычно задают при помощи только одного луча.
Углом между двумя направлениями называется величина наименьшего угла между любыми лучами этих направлений с общим началом.
Угол между лучами l1 и l2 обозначается \(\widehat{l_1; l_2}\). По определению угол между двумя направлениями находится в промежутке [0°; 180°].
Углом между двумя ненулевыми векторами называется угол между направлениями этих векторов. Угол между векторами а и b (рис. 21) обозначается \(\widehat{a; b}\)
Если угол между векторами а и b равен 90°, то эти векторы называют перпендикулярными (или ортогональными) и пишут: а ⊥ b.
Отметим, что если а\(\upuparrows\)b, то \(\widehat{a; b}\) = 0°, а если а\(\uparrow\downarrow\)b, то \(\widehat{a; b}\) =180°.
Рассмотрим некоторую прямую l, на которой выбрана единица измерения длины. Пусть А и В — некоторые точки прямой l такие, что |АВ| = 1.
Тогда векторы \(\overrightarrow{AB}\) и \(\overrightarrow{BA}\) называются единичными векторами прямой l (рис.22).
Единичные векторы прямой задают на ней два направления. Одно из них называется положительным, другое — отрицательным.
Прямая, на которой выбрана точка О (начало отсчета), задано положительное направление и задана единица измерения длины, называется осью. Вектор е (|е| = 1), задающий направление оси, называется единичным вектором оси (рис. 23).
Углом между вектором и осью, называется величина угла между направлением оси и направлением вектора (рис. 2}} = -\frac{4}{9} $$
math — Угол между двумя векторами в R
Если вы хотите вычислить угол между несколькими переменными, вы можете использовать следующую функцию, которая является расширением решения, предоставленного @Graeme Walsh.
углов <- функция(матрица){ ## Вычисление векторного произведения матрицы cross.product <- t(matrix)%*%matrix ## нижний и верхний треугольник векторного произведения — это скалярные произведения векторов dot.products<- cross.product[lower.tri(cross.product)] ## Рассчитать нормы L2 temp <- подавлять предупреждения (diag (sqrt (cross.product))) temp <- temp%*%t(temp) L2.norms <- temp[lower.tri(temp)] ## Значения арккосинуса для каждой пары переменных low.t <- acos(dot.products/L2.norms) ## Создать пустую матрицу для представления результатов result.matrix <- matrix(NA,ncol = dim(matrix)[2],nrow=dim(matrix)[2]) ## Заполните матрицу значениями арккосинуса и присвойте диагональным значениям ноль «0» result. matrix[нижний.tri(result.matrix)] <- нижний.t diag(результат.матрица) <- 0 результирующая.матрица[верхняя.три(результат.матрица)] <- t(результат.матрица)[верхняя.три(т(результат.матрица))] ## Получить результирующую матрицу возврат (результат.матрица) }
Кроме того, если вы отцентрировали входные переменные по центру и получили косинусные значения приведенной выше матрицы результатов, вы получите точную матрицу корреляции переменных.
Вот приложение функции.
набор семян(123) п <- 100 м <- 5 # Генерируем набор случайных величин mt <- матрица (rnorm (n * m), nrow = n, ncol = m) # Среднецентрированная матрица mt.c <- шкала (mt, шкала = F) # Углы косинуса cosine.angles <- углы (матрица = mt) > косинус.углы [1] [2] [3] [4] [5] [1,] 0,000000 1,6308191,686037 1,618119 1,751859 [2,] 1,630819 0,000000 1,554695 1,523353 1,712214 [3,] 1,686037 1,554695 0,000000 1,619723 1,581786 [4,] 1,618119 1,523353 1,619723 0,000000 1,593681 [5,] 1,751859 1,712214 1,581786 1,593681 0,000000 # Углы косинуса центрированных данных centered. cosine.angles <- angles(matrix = mt.c) > центр.косинус.углы [1] [2] [3] [4] [5] [1,] 0,000000 1,620349 1,700334 1,614890 1,764721 [2,] 1,620349 0,000000 1,540213 1,526950 1,701793 [3,] 1,700334 1,540213 0,000000 1,615677 1,595647 [4,] 1,614890 1,526950 1,615677 0,000000 1,5
[5,] 1,764721 1,701793 1,595647 1,5
0,000000 # Это даст вам матрицу корреляции потому что (углы (матрица = mt.c)) [1] [2] [3] [4] [5] [1,] 1,00000000 -0,04953215 -0,12917601 -0,04407900 -0,19271110 [2,] -0,04953215 1,00000000 0,03057903 0,04383271 -0,13062219 [3,] -0,12917601 0,03057903 1,00000000 -0,04486571 -0,02484838 [4,] -0,04407900 0,04383271 -0,04486571 1,00000000 -0,01925986 [5,] -0,19271110 -0,13062219 -0,02484838 -0,01925986 1,00000000 # Исходная корреляционная матрица кор (мт) [1] [2] [3] [4] [5] [1,] 1,00000000 -0,04953215 -0,12917601 -0,04407900 -0,19271110 [2,] -0,04953215 1,00000000 0,03057903 0,04383271 -0,13062219 [3,] -0,12917601 0,03057903 1,00000000 -0,04486571 -0,02484838 [4,] -0,04407900 0,04383271 -0,04486571 1,00000000 -0,01925986 [5,] -0,19271110 -0,13062219 -0,02484838 -0,01925986 1,00000000 # Проверяем, равны ли они all.equal (cos (углы (матрица = mt.c)), cor (mt)) [1] ИСТИНА
Если вектор \[a + b{\text{ }} = \] \[c\] и \[a + b{\text{ }} = {\text{ }}c\]. Чему равен угол между $a$ и $b$ ?(A) \[90\] (B) \[45\](C) \[0\](D) \[60\]
Ответ
Проверено269,7 тыс.+ просмотров
Подсказка: Составьте уравнение, используя заданные отношения между векторами, упростив их. Используйте формулу скалярного произведения двух векторов. Найдите косинус угла из скалярного произведения, а затем найдите угол между двумя векторами. Используемая формула:
$\overrightarrow a \overrightarrow b = ab\cos \theta $
Где угол между двумя векторами $\overrightarrow a $ и $\overrightarrow b $ равен $\theta $ .
Полный пошаговый ответ:
Результирующий вектор двух векторов $\overrightarrow a $ и $\overrightarrow b $ равен $\overrightarrow c $ т.е. $\overrightarrow a + \overrightarrow b = \overrightarrow c $… ……$(1)$