You could solve for just two of the variables, like sym.solve((eq1,
eq2, eq3), (z, x)).

Aaron Meurer

On Fri, Jun 28, 2013 at 3:56 PM, Ondřej Čertík <ondrej.cer...@gmail.com> wrote:
> Hi Thomas,
>
> On Thu, Jun 27, 2013 at 8:32 PM, Thomas Moore <tommo...@live.com.au> wrote:
>> I'm contemplating using sympy in a program which will need to symbolically
>> solve a set of simultaneous and possibly non-linear equations. However, it's
>> obviously not possible to find symbolic solutions in many cases, but if
>> sym.solve can't find an explicit solution what I'd really like is for some
>> way of delivering a simplified set of simultaneous equations.
>>
>> Let me give an example which gives me some hope:
>>
>>      eq1 = x + y - sym.log(x) - 3
>>      eq2 = x**2 + z**2 - 4
>>      eq3 = x + y - 15*z - 100
>>
>>      sym.solve((eq1, eq2, eq3), (x,y,z))
>>
>> Obviously this is going to be tough to solve completely, and Sympy does
>> fail, but the error I recieve is:
>>
>>     NotImplementedError: could not solve 15*z - log(sqrt((-z + 2)*(z + 2)))
>> + 97
>>
>> And it looks like, under the hood, Sympy has in fact almost completely
>> simplified the equations. We have an equation in terms of z alone, and
>> (hopefully) we could have a second equation in terms of x and z and then a
>> third equation in terms of all three variables.
>>
>> I'm just wondering if there is some function within sympy to simplify sets
>> of simultaneous equations by eliminating variables.
>
> I don't know how to do that, apart from manually substituting one
> equation into the other.
> Do you know the structure of your equations?
>
> How do you generate them, where do they come from? Maybe it is
> possible to design an algorithm that can do what you want.
>
> Ondrej
>
> --
> You received this message because you are subscribed to the Google Groups 
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sympy+unsubscr...@googlegroups.com.
> To post to this group, send email to sympy@googlegroups.com.
> Visit this group at http://groups.google.com/group/sympy.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To post to this group, send email to sympy@googlegroups.com.
Visit this group at http://groups.google.com/group/sympy.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to