numpy.lib.scimath.sqrt#

lib.scimath.sqrt(x)[источник]#

Вычисляет квадратный корень из x.

Для отрицательных входных элементов возвращается комплексное значение (в отличие от numpy.sqrt который возвращает NaN).

Параметры:
xarray_like

Входное значение(я).

Возвращает:
выходndarray или скаляр

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

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

numpy.sqrt

Примеры

Для вещественных неотрицательных входных данных это работает так же, как numpy.sqrt:

>>> import numpy as np
>>> np.emath.sqrt(1)
1.0
>>> np.emath.sqrt([1, 4])
array([1.,  2.])

Но он автоматически обрабатывает отрицательные входные данные:

>>> np.emath.sqrt(-1)
1j
>>> np.emath.sqrt([-1,4])
array([0.+1.j, 2.+0.j])

Ожидаются разные результаты, потому что: числа с плавающей запятой 0.0 и -0.0 различны.

Для большего контроля явно используйте complex() следующим образом:

>>> np.emath.sqrt(complex(-4.0, 0.0))
2j
>>> np.emath.sqrt(complex(-4.0, -0.0))
-2j