Найти комплексные корни в показательных или тригонометрических уравнениях - PullRequest
0 голосов
/ 23 января 2020

Если бы вы могли помочь мне с кодом в Sage. Я хочу найти корни уравнений этого типа: e^(2*pi*b*i). С постоянной b и мнимой единицей i. Это уравнение также можно записать в виде: cos(b*2*pi)+ i*sin(b*2*pi). Знаете ли вы какие-либо команды для этого?

Я пытаюсь:

import matplotlib.pyplot as plt
import numpy as np
import cmath
from scipy.optimize import fsolve
z=var('z')
a = cos(4*cmath.pi*z)+ cos(14*cmath.pi*z) + cos(62*cmath.pi*z)+ (I* 
(sin(4*cmath.pi*z)+ sin(14*cmath.pi*z)+ sin(62*cmath.pi*z)))
def f(x):
    return np.abs( math.cos(4*math.pi*x)+ math.cos(14*math.pi*x) + 
    math.cos(62*math.pi*x)+(1j*(math.sin(4*math.pi*x)+ 
    math.sin(14*math.pi*x)+ math.sin(62*math.pi*x))))
    x = fsolve(f, 0.01)

также с:

from sage.rings.polynomial.complex_roots import complex_roots
x=polygen(CC)
complex_roots(cos(4*math.pi*x)+ cos(14*math.pi*x) + cos(62*math.pi*x)+(I* 
(sin(4*math.pi*x)+ sin(14*math.pi*x)+ sin(62*math.pi*x))))

Спасибо!

1 Ответ

0 голосов
/ 04 февраля 2020

Если вы ищете решения уравнения e^z=0, то их нет. Не имеет значения, является ли z действительным, чисто мнимым (например, 2*b*pi*i) или сколь угодно сложным.

Это легко увидеть, если разложить e^z=e^(a+ib)=e^a*e^(ib). Второй фактор e^(ib) лежит на единичном круге в комплексной плоскости. Первый фактор реален и всегда больше нуля. Следовательно, продукт никогда не может быть нулевым.

...