2015-08-05 4 views
0

Я хочу, чтобы решить п (х) изSymPy решить функцию как функция

(Eq(2*f(x)+f(1/x),1/x)) 

ожидаемый выход

F (X) = (2-х^2)/(3 * х)

стараюсь

solve((Eq(2*f(x)+f(1/x),1/x)),f(x)) 

Этот ответ содержит п (1/х): (х * е (1/х) + 1)/(2 * х)

Как получить f (x) = (2-x^2)/(3 * x) в sympy?

ответ

1

Я не думаю, что sympy решит такие функциональные уравнения так, как вы хотите, но вы можете разделить ваше конкретное уравнение на два: 2y + z = 1/x и 2z + y = x, где y (1/х) = г (х), и пусть SymPy решить как для у и г:

In [5]: x, y, z = Symbol('x'), Symbol('y'), Symbol('z') 
In [6]: solve((Eq(2*y+z,1/x), Eq(2*z+y,x)),y,z) 
Out[6]: {y: (-x**2 + 2)/(3*x), z: (2*x**2 - 1)/(3*x)} 

Так у- е (х), что вы хотите здесь.

+0

Немного от темы: вместо этого вы можете использовать 'x, y, z = символы ('x y z')'. –

Смежные вопросы