Spec-Zone.ru › NumPy 2.0

numpy.atan2

numpy.atan2(x1, x2, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature])=<ufunc 'arctan2'>

Элементная арктангенс x1/x2 с правильным выбором квадранта.

Квадрант (т.е. ветвь) выбирается так, чтобы arctan2(x1, x2) был подписанным углом в радианах между лучом, заканчивающимся в начале координат и проходящим через точку (1,0), и лучом, заканчивающимся в начале координат и проходящим через точку (x2, x1). (Обратите внимание на перестановку ролей: «y-координата» является первым параметром функции, «x-координата» — вторым.) Согласно соглашению IEEE, эта функция определена для x2 = +/-0 и для любого или обоих из x1 и x2 = +/-inf (см. Примечания для конкретных значений).

Эта функция не определена для аргументов со значениями комплексного типа; для так называемого аргумента комплексных значений используйте angle.

Параметры:
x1array_like, действительное значение

y-координаты.

x2array_like, действительное значение

x-координаты. Если x1.shape != x2.shape, они должны быть совместимы для трансляции в общую форму (которая становится формой результата).

outndarray, None или кортеж из ndarray и None, необязательно

Расположение, в которое записывается результат. Если указано, оно должно иметь форму, к которой вводятся данные. Если не указано или равно None, возвращается только что выделенный массив. Кортеж (возможен только в качестве ключевого аргумента) должен иметь длину, равную количеству выходов.

wherearray_like, необязательно

Это условие транслируется по вводу. В местах, где условие истинно, out массив будет установлен на результат ufunc. В противном случае out массив сохранит свое исходное значение. Обратите внимание, что если out массив создается с помощью значения по умолчанию out=None, места в нем, где условие ложно, останутся неинициализированными.

**kwargs

Для других ключевых аргументов см. документацию ufunc.

Возвращаемое значение:
anglendarray

Массив углов в радианах, в диапазоне [-pi, pi]. Это скаляр, если x1 и x2 являются скалярами.

См. также

arctan, tan, angle

Примечания

arctan2 идентичен функции atan2 базовой библиотеки C. В стандарте C определены следующие специальные значения: [1]

x1

x2

arctan2(x1,x2)

+/- 0

+0

+/- 0

+/- 0

-0

+/- pi

> 0

+/-inf

+0 / +pi

< 0

+/-inf

-0 / -pi

+/-inf

+inf

+/- (pi/4)

+/-inf

-inf

+/- (3*pi/4)

Обратите внимание, что +0 и -0 — это различные числа с плавающей точкой, как и +inf и -inf.

Ссылки

[1]

Стандарт ISO/IEC 9899:1999, «Язык программирования C».

Примеры

Рассмотрим четыре точки в разных квадрантах:

>>> x = np.array([-1, +1, +1, -1])
>>> y = np.array([-1, -1, +1, +1])
>>> np.arctan2(y, x) * 180 / np.pi
array([-135.,  -45.,   45.,  135.])

Обратите внимание на порядок параметров. arctan2 также определен, когда x2 = 0 и в нескольких других специальных точках, получая значения в диапазоне [-pi, pi]:

>>> np.arctan2([1., -1.], [0., 0.])
array([ 1.57079633, -1.57079633])
>>> np.arctan2([0., 0., np.inf], [+0., -0., np.inf])
array([0.        , 3.14159265, 0.78539816])

© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.atan2.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API