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.

Reply via email to