РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
186 of 769 menu

Функция atan2

Функция atan2 вычисляет арктангенс отношения элементов тензора input (числитель) к элементам тензора other (знаменатель) с учётом знаков обеих величин. Результат - угол в радианах, лежащий в диапазоне от до π включительно. Первым параметром передаётся тензор числителей, вторым - тензор знаменателей. Функция поддерживает вещание (broadcasting) и работает с элементами поэлементно.

Синтаксис

torch.atan2(input, other, out=None)

Пример

Рассмотрим базовый пример использования функции atan2 для двух одномерных тензоров:

import torch t1 = torch.tensor([1.0, 0.0, -1.0]) t2 = torch.tensor([1.0, 1.0, -1.0]) res = torch.atan2(t1, t2) print(res)

Результат выполнения кода:

tensor([ 0.7854, 0.0000, -2.3562])

Пример

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

import torch x = torch.tensor([1.0, 0.0, -1.0, 0.0]) y = torch.tensor([0.0, 1.0, 0.0, -1.0]) angles = torch.atan2(y, x) print(angles)

Результат выполнения кода:

tensor([ 0.0000, 1.5708, 3.1416, -1.5708])

Пример

Продемонстрируем работу вещания: скалярное значение применяется ко всем элементам тензора:

import torch t = torch.tensor([1.0, 2.0, 3.0]) res = torch.atan2(t, 1.0) print(res)

Результат выполнения кода:

tensor([0.7854, 1.1071, 1.2490])

Пример

Теперь рассмотрим работу функции с двумерными тензорами:

import torch t1 = torch.tensor([ [1.0, 2.0], [3.0, 4.0] ]) t2 = torch.tensor([ [4.0, 3.0], [2.0, 1.0] ]) res = torch.atan2(t1, t2) print(res)

Результат выполнения кода:

tensor([ [0.2450, 0.5880], [0.9828, 1.3258] ])

Смотрите также

  • функцию atan,
    которая вычисляет арктангенс без учёта квадранта
  • функцию sin,
    которая вычисляет синус угла (обратная задача)
  • функцию cos,
    которая вычисляет косинус угла (обратная задача)
  • функцию tan,
    которая вычисляет тангенс угла (обратная задача)
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить