numpy
не допускает дробных степеней отрицательных чисел, поскольку ожидает сложный результат, а вы не определили сложный тип. Вы можете проверить свой массив мощности следующим образом:
pow = abs(np.cos(x_values)) + abs(np.sin(x_values)) + (2.718281828459045** np.sin(x_values))
a = np.sin(x_values)
и использовать обходной путь вроде этого:
a_pow = np.sign(a) * (np.abs(a)) ** (pow)
y_values = (np.arcsin(np.sqrt(abs(a_pow))) - x_values)/x_values
Но заранее убедитесь, что вы не ожидаете комплексных чисел в качестве результатов!
Если вы это сделаете, измените свой массив dtype
на np.complex
.