Re: Chop in Mathematica 8.0.1
- To: mathgroup at smc.vnet.net
- Subject: [mg117552] Re: Chop in Mathematica 8.0.1
- From: telefunkenvf14 <rgorka at gmail.com>
- Date: Tue, 22 Mar 2011 05:09:25 -0500 (EST)
- References: <im7c6c$74$1@smc.vnet.net>
On Mar 21, 6:18 am, Andrzej Kozlowski <a... at mimuw.edu.pl> wrote: > Chop does not seem to work properly in Mathematica 8.0.1: > > f[a_] := 2 I Pi Sin[a]/a > > In[2]:= f[1.] > > Out[2]= 0. + 5.287118128162912*I > > In[3]:= Chop[%] > > Out[3]= 0. + 5.287118128162912*I > > This is with > > In[4]:= $Version > > Out[4]= 8.0 for Mac OS X x86 (64-bit) (February 23, 2011) > > Mathematica 7.01 returns 5.287118128162912*I as expected. > > Can anyone confirm it? At the moment I can't see any simple work around.. . > > Andrzej Kozlowski I get the same behavior on Windows 7 for 7.0.1 and 8.0.1. Did notice the documentation on Chop in 8.0.1 includes a new subsection on 'possible issues'... Seems like there should be some type of 'show changes' indicator in the documentation. ------- >From the new subsection on possible issues: Machine complex numbers have machine reals for both real and imaginary parts: In[1]:= 2. I Out[1]= 0. + 2. I Consequently, Chop does not make the real part of machine complex numbers an exact zero: In[2]:= Chop[10.^-12 + 2. I] Out[2]= 0. + 2. I Small imaginary parts from machine complex numbers are eliminated to make a machine real: In[3]:= Chop[2. + 10.^-12 I] Out[3]= 2. ----- It seems to me that 8.0.1 is the more desired behavior, no? (Maintains precision; one can use Re or Im to select parts that remain, right?) -RG