Как решить x - загар (x) = 0 с помощью Sympy - PullRequest
2 голосов
/ 27 февраля 2020

Я пытаюсь найти решение уравнения

x = a * tan (x)

на Python. Кажется, Sympy может решить такое уравнение, поэтому если я напишу

import sympy as sym
x = sym.Symbol('x')
sym.solveset(x/sym.tan(x) - 0.5, x)

, то получу вывод:

{ x ∣ x∈C ∧ x − 0.5*tan(x) = 0 } ∖ ({ 2nπ | n∈Z } ∪ { 2nπ+π | n∈Z })

Я знаю, что для каждого касательного цикла есть 3 решения, и Я не понимаю, что говорит мне Симпи.

Я ожидал бы найти что-то похожее на это:

графики y = 0.5 * tan (x) и y = x

1 Ответ

1 голос
/ 27 февраля 2020

Вывод означает «набор всех значений, которые устанавливают уравнение в ноль, исключая определенные значения, включающие число пи». Я не думаю, что вы найдете решение для закрытой формы для этого, но вы можете получить числовые ответы. Попробуйте переписать, чтобы сделать его лучше:

>>> [nsolve(sin(x)-2*cos(x)*x, i).round(2) for i in (0,2,4)]
[0, 1.17, 4.6]

Если вы посмотрите на сюжет этого, вы увидите, что существует бесконечное количество решений; это только 3 неотрицательных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...