Как я могу переписать комплексное число z = 5^i в стандартную форму z=cos(log(5)) + i * sin(log(5)) с помощью SymPy?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как я могу переписать комплексное число z = 5^i в стандартную форму z=cos(log(5)) + i * sin(log(5)) с помощью SymPy?

Сообщение Anonymous »

Я хотел бы записать комплексные числа z в стандартную форму z = a + i b с действительными числами a и b.
Для большинства моих случаях конструкция Sympy z.expand(complex=True) делает то, что я ожидаю, но не во всех случаях. Например, мне не удалось переписать z = 5**sp.I, и SymPy просто возвращает введенные данные:

Код: Выделить всё

In [1]: import sympy as sp

In [2]: c1 = 2 * sp.sqrt(2) * sp.exp(-3 * sp.pi * sp.I / 4)

In [3]: c1.expand(complex=True)  # works as expected
Out[3]: -2 - 2*I

In [4]: c2 = 5**(sp.I)           # SymPy fails here

In [5]: c2.expand(complex=True)
Out[5]: re(5**I) + I*im(5**I)

In [6]: sp.__version__
Out[6]: '1.13.2'

Для c2 я ожидаю, что преобразование даст мне cos(log(5)) + i * sin(log(5)). Есть ли способ получить этот результат?


Подробнее здесь: https://stackoverflow.com/questions/791 ... -z-coslog5
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»