Hi Ondrej, The variable to solve for is x, not x_mean or x_max, both of which are constants between 0.05 and 0.9.
It is a nonlinear, implicit equation - so is it the case that sympy can't deal with solving such an equation? Thanks! On Feb 2, 7:23 pm, Ondrej Certik <[email protected]> wrote: > On Mon, Feb 2, 2009 at 3:49 PM, limist <[email protected]> wrote: > > > Hi all - I suspect this is a dumb noob question but after browsing the > > tutorial and other docs, I can't get this to work, > > > from sympy import symbols, solve > > > x = symbols('x') > > f_x = (((2/x + x_max) * (1-exp(x*x_max)) + 2*x_max*exp(x*x_max)) / (exp > > (x*x_max) - 1 - x*x_max)) - x_mean > > solutions = solve(f_x, x) > > > ...I get the error, ValueError: Symbolic value, can't compute for the > > f_x line. x_max, x_mean are supplied parameters (constants, in f_x). > > > Any help appreciated! > > This is what I am getting with the latest sympy: > > In [1]: var("x_max x_mean") > Out[1]: (x_max, x_mean) > > In [2]: f_x = (((2/x + x_max) * (1-exp(x*x_max)) + 2*x_max*exp(x*x_max)) / > (exp > ...: (x*x_max) - 1 - x*x_max)) - x_mean > > In [3]: f_x > Out[3]: > ⎛ x⋅x_max⎞ ⎛ 2⎞ x⋅x_max > ⎝1 - ℯ ⎠⋅⎜x_max + ─⎟ + 2⋅x_max⋅ℯ > ⎝ x⎠ > -x_mean - ───────────────────────────────────────────── > x⋅x_max > 1 + x⋅x_max - ℯ > > In [4]: solve(f_x, x) > --------------------------------------------------------------------------- > ValueError Traceback (most recent call last) > > /home/ondra/repos/sympy/<ipython console> in <module>() > > /home/ondra/repos/sympy/sympy/solvers/solvers.pyc in solve(f, *symbols, > **flags) > 240 # assumptions, it should be checked, that for the > solution, > 241 # b!=0. > --> 242 result = tsolve(f, *symbols) > 243 elif strategy == -1: > 244 raise Exception('Could not parse expression %s' % f) > > /home/ondra/repos/sympy/sympy/solvers/solvers.pyc in tsolve(eq, sym) > 774 > 775 > --> 776 raise ValueError("unable to solve the equation") > 777 > 778 > > ValueError: unable to solve the equation > > Which means that a solver for such an equation is not yet implemented. > However, looking at the equation, it contains x in terms like: > > x + exp(x), > > so it is not solvable in terms of elementary functions, is it? What is > it's solution? If you know an algorithm to solve it, we can then > enhance the solver. If you'd like to give it a shot, we are at help to > get this implemented. > > Ondrej --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "sympy" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/sympy?hl=en -~----------~----~----~----~------~----~------~--~---
