       Re: Same Limit: OK in 5.2, fails in 6.0; Packages gone in 6.0 ???

• To: mathgroup at smc.vnet.net
• Subject: [mg77990] Re: [mg77959] Same Limit: OK in 5.2, fails in 6.0; Packages gone in 6.0 ???
• From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
• Date: Thu, 21 Jun 2007 05:35:44 -0400 (EDT)
• References: <200706200941.FAA10343@smc.vnet.net> <291D33D0-24DA-419A-9BE1-CE7F9607B6E2@mimuw.edu.pl> <46793931.60404@mcn.net>

```On 20 Jun 2007, at 23:26, jrc wrote:

> Andrzej Kozlowski wrote:
>>
>>
>> On 20 Jun 2007, at 18:41, jrc wrote:
>>
>>> Why?
>>>
>>> I have,
>>>
>>> \$Assumptions = {a > 0, k1 > 0, k2 >0, x e(in) Reals}
>>> (repeats ok)
>>>
>>> i1b = (1/a)* Integral from -a/2 to +a/2 of integrand:
>>>
>>>               exp(- i k2 x) exp(i k1 x) dx
>>>
>>> with the expected result,
>>>
>>> i1b = fraction with numerator = 2 Sin[(1/2)a(k1-k2)]
>>>                  and denominator = a(k1-k2)
>>>
>>> Now I want the limit of this result, as the parameter a goes to
>>> infinity:
>>>
>>> Limit[i1b, a -> Infinity]
>>>
>>> Mathematica 5.2 gives correct result, zero;
>>>    (note this is just lim(sin(x)/x, x -> inf), which is obviously
>>> zero)
>>>
>>> Mathematica 6.0 is unable to evaluate the limit.
>>>
>>> Ruskeepaa's "Navigator", 2nd ed, (written for v5.2) claims there
>>> is a package, "Calculus`Limit`" that makes 'Limit' work better
>>> (p. 395 and p. 430). However, no such package seems to exist in
>>> v6.0.
>>>
>>> How many packages no longer exist in 6.0 ???? Is there a list ????
>>>
>>> Can anyone give me a reason for this obvious failure?
>>>
>>> jrc
>>>
>>
>>
>> Whose failure?
>>
>>  Integrate[(Exp[(-I)*k2*x]*Exp[I*k1*x])/a, {x, -a/2, a/2}]
>>
>> (2*Sin[(1/2)*a*(k1 - k2)])/(a*k1 - a*k2)
>>
>>  Assuming[Element[k1 | k2, Reals], Limit[%, a -> Infinity]]
>>  0
>>
>> The result is, of course, not true without the assumption (e.g.
>> put k1=2I, k2 = I).
>>
>> Andrzej Kozlowski
>>
>>
>>
>>
> This deserves a 2nd reply. I apologize for mentioning M**le -
> another system, on here.
> I need to read the rules - my error.
>
> But Andrzej, honestly, putting k1=2I, k2=I makes no sense whatever.
> These are
> obviously real wavenumbers, and need have no specific ratio
> whatever. Further,
> my assumptions, and the integral, work just fine in v5.2. How is
> the failure in 6.0
> with exact same code an 'improvement' ? Further, the result is
> obvious:
>
> lim (sin(x)/x) as x -> inf is obviously zero.
>
> I don't understand your comment at all. Incidentally, one of the
> assumption sets
> I did use was k1 and k2 in reals. Still fails in limit in 6.0.
>
> If you honestly believe the documentation in 6.0 is superior to
> that of 5.2, you
> must have access to some documentation I don't. Further, the online
> 'system'
> is no help to someone without a high speed internet connection.
>
> jrc
>

Sorry, but I can't make any sense of your reply. Please look at the
code I posted. First and most of all, in the case of my Mathematica
5.2 and 6.0, they behave in an identical way. So what on earth can

You have an expression

(2*Sin[(1/2)*a*(k1 - k2)])/(a*k1 - a*k2)

in both 5.2 and 6.0. If you now take a limit in 5.2

In:=
Limit[(2*Sin[(1/2)*a*(k1 - k2)])/(a*k1 - a*k2),
a -> Infinity]

Out=
Limit[(2*Sin[(1/2)*a*(k1 - k2)])/(a*k1 - a*k2),
a -> Infinity]

If I do:

In:=
Assuming[Element[k1|k2,Reals],Limit[%,a->Infinity]]

Out=
0

I get 0. This is with version:

In:=
\$Version

Out=
5.2 for Mac OS X (February 24, 2006)

Now I switch to 6.0:

In:= \$Version

Out= "6.0 for Mac OS X PowerPC (32-bit) (April 20, 2007)"

Exactly as before:

Limit[(2*Sin[(1/2)*a*(k1 - k2)])/(a*k1 - a*k2),
a -> Infinity]

Limit[(2*Sin[(1/2)*a*(k1 - k2)])/(a*k1 - a*k2),
a -> Infinity]

and

Assuming[Element[k1 | k2, Reals],
Limit[%, a -> Infinity]]
0

Absolutely no difference between the two versions. Either we have
different versions of Mathematica or one of us is having a really bad
day.

Moreover, what on earth do you mean by "honestly, putting k1=2I, k2=I
makes no sense whatever. These are
obviously real wave numbers, and need have no specific ratio whatever."

First, how is Mathematica to know from the input:

2*Sin[(1/2)*a*(k1 - k2)])/(a*k1 - a*k2)

that k1 and k2 are "real wave numbers"? Perhaps you have a more
advanced version which can read your mind. Second, my Mathematica 5.2
can't find the limit without the information that k1 and k2 are
reals, as I demonstrated above. So how come your can.

But the main point is really, that the behaviour of both versions is
IDENTICAL, at least on the Mac.

As for the documentation, I find that it ideally corresponds to the
way I work - which is exactly the same as the way I have always
approached the study of mathematics. The most essential point is
this: reading a math book from cover to cover in some sort of
organized way is a terrible way to learn mathematics. By the time you
get to the end you will have forgotten what was at the beginning. The
approach that I think is the  right one is, to learn a few basics
(the tutorials provided with the current version are ideal for this)
and start working on some real problem. Then look up in documentation
just the things you need, and never try to read "all there is to
know" about some particular point. Knowledge that is not immediately
applied is never digested and is soon forgotten. Anyway, of course,
different people may find different approaches that suit them best, I
am not claiming mine is the only one or the best one for everyone
(but it is the best for me). What I meant to say is that all the
criticism of the documentation I have seen reflect nothing but the
fact that for people who use documentation if other ways the present
version may be unsuitable. For me, however, it is very much better
than any past version. (Although, I have to add, that of all my
knowledge of Mathematica, only a very small part I obtained by
reading the documentation and even Wolfram's book has only been a
relatively minor influence).

Andrzej Kozlowski

```

• Prev by Date: RE: : 6.0 Get Graphics Coordinates...
• Next by Date: Re: RE: Re: Re: 6.0 Get Graphics Coordinates...
• Previous by thread: Re: Same Limit: OK in 5.2, fails in 6.0; Packages gone
• Next by thread: Re: Same Limit: OK in 5.2, fails in 6.0; Packages gone in 6.0 ???