I responded about this on the issue https://code.google.com/p/sympy/issues/detail?id=4017. This appears to be an inadvertent regression in nsimplify. The workaround is to use solve(rational=False).
Aaron Meurer On Wed, Sep 11, 2013 at 4:36 PM, G B <[email protected]> wrote: > This appears to have been introduced in 0.7.3. I reverted to 0.7.2 and get > the expected results. > > > On Wednesday, September 11, 2013 3:27:22 PM UTC-7, G B wrote: >> >> I'm not sure what's causing this, but solve seems to want to call small >> constants zero: >> >> In [1]: from sympy import * >> In [2]: E,m,c=symbols('E,m,c') >> In [3]: Energy=Eq(E,m*c**2) >> >> In [4]: solve(Energy,E) >> Out[4]: [c**2*m] >> >> In [5]: E2=Energy.subs(c,3e8) >> In [6]: solve(E2,E) >> Out[6]: [9.0e+16*m] >> >> In [7]: e2=Energy.subs(c,3e-8) >> In [8]: solve(e2,E) >> Out[8]: [0.0] >> >> I'm not sure why that happens with very small coefficients. It doesn't >> happen with less small ones: >> >> In [9]: e3=Energy.subs(c,0.5) >> In [10]: solve(e3,E) >> Out[10]: [0.25*m] >> >> > -- > 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 [email protected]. > To post to this group, send email to [email protected]. > 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 [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sympy. For more options, visit https://groups.google.com/groups/opt_out.
