MathGroup Archive 2002

[Date Index] [Thread Index] [Author Index]

Search the Archive

RE: Re: Limit[Sin[a*x]/(a*x), x -> Infinity]

  • To: mathgroup at smc.vnet.net
  • Subject: [mg35849] RE: [mg35818] Re: Limit[Sin[a*x]/(a*x), x -> Infinity]
  • From: "DrBob" <majort at cox-internet.com>
  • Date: Sat, 3 Aug 2002 00:17:14 -0400 (EDT)
  • Reply-to: <drbob at bigfoot.com>
  • Sender: owner-wri-mathgroup at wolfram.com

There's nothing to prevent Limit from converting the condition a>=0 into
the change of variables a=Exp@Re@b and computing the limit (no matter
what limit function or asymptote we're looking at), if Limit were made
"assumption-aware".  That's only one example, but I think most
conditions we'd be interested in can be handled similarly.

Bobby

-----Original Message-----
From: Andrzej Kozlowski [mailto:andrzej at platon.c.u-tokyo.ac.jp] 
To: mathgroup at smc.vnet.net
Subject: [mg35849] Re: [mg35818] Re: Limit[Sin[a*x]/(a*x), x -> Infinity]


On Friday, August 2, 2002, at 03:42  PM, Dana DeLouis wrote:

>
> Hello.  I do not have an answer, as I am new also.
> In Mathematica 4.2, Help says in part "...Limit therefore makes no
> explicit assumptions about symbolic functions." Same for the Package
> "NLimit."  Therefore, I think we're out of luck here.

You can't make assumptions in Limit. There are not enough general 
methods for such a mechanism to be really useful.

> As an newbe observation, the only option for Limit (For Mathematica 4.
2)
> is "Direction."  However, if you type ??Limit, there is another Option
> listed that appears not to be documented. That option is "Analytic."
I
> thought maybe this would solve this type of problem, but it does not.
I
> do not know for sure what this option does.  Anyone else??

This is meant for the situations when you use a custom defined function.

For example:

In[21]:=
Limit[f[Sin[x]/x], x -> 0]

Out[21]=
Limit[f[Sin[x]/x], x -> 0]

but

In[22]:=
Limit[f[Sin[x]/x], x -> 0, Analytic -> True]

Out[22]=
f[1]



>
> Information["Limit", LongForm -> True]
> "Limit[expr, x->x0] finds the limiting value of \
> expr when x approaches x0...
>
> Attributes[Limit] = {Listable, Protected}
>
> Options[Limit] = {Analytic -> False, Direction -> Automatic}
>
> As a possible workaround, would substituting many values for "a" work?
> Here is what I am thinking...
>
> v = Table[Random[Real, {0, 2*Pi}], {100}];
>
> Union[(Limit[Sin[#1*x]/(#1*x), x -> Infinity] & ) /@ v]
>
> I get all zero's like you predicted for many values of a.
> {0}
>
> If you try "Integers", then I get an "Indeterminate" because the limit
> does not like "a" being 0.
>
> v = Table[Random[Integer, {-4, 4}], {10}];
>
> Union[(Limit[Sin[#1*x]/(#1*x), x -> Infinity] & ) /@ v]
>
>
> {0, Indeterminate}



Actually the problem is that the function Sin[z]/z is singular at 
Infinity. Thus:

In[26]:=
Limit[Sin[z]/z, z -> Infinity, Direction -> -1]

Out[26]=
0

In[27]:=
Limit[Sin[z]/z, z -> Infinity, Direction -> -I]

Out[27]=
Infinity

In other words the limit depends on the direction. So when you consider

Limit[Sin[a z]/(a z), z -> Infinity]

it is not clear in which direction the limit is being taken. This 
depends on whether a is real or not (as Bobby Treat already pointed this

out in his message),and of course there is the special case a==0.

Since Limit does nto allow assumptions to be entered if you know that 
you will be dealing with such cases frequently one approach is to 
redefine limit:

Unprotect[Limit];

In[28]:=
Limit[Sin[a_*x_]/(a_*x_), x_ -> Infinity] /;
     Im[a] == 0 && a != 0 = 0;
Limit[Sin[a_*x_]/(a_*x_), x_ -> Infinity] /;
     Re[a] == 0 && a != 0 = Infinity;

In[30]:=
Protect[Limit];


Now you need to enter assumptions about a's or b's, e.g.:

In[31]:=
a/:Im[a]=0;

In[32]:=
a/:(a≠0)=True;

this says a is a non-zero real. Limit will now return the expected 
answer:

In[33]:=
Limit[Sin[a*x]/(a*x), x -> Infinity]

Out[33]=
0

similarly for the case when b is non zero and imaginary we will get:

In[34]:=
b /: Re[b] = 0;

In[35]:=
b /: b != 0 = True;


In[36]:=
Limit[Sin[b*x]/(b*x), x -> Infinity]

Out[12]=
Infinity

If you are sure you are going to onl be dealing with non-zero real 
numbers you can redefine Limit to return always 0 in such cases, which 
may make it simpler to deal with a large number of them in one go.

Andrzej Kozlowski
Toyama International University
JAPAN
http://platon.c.u-tokyo.ac.jp/andrzej/


>
> --
> Dana
> Windows XP  & Mathematica 4.1
> = = = = = = = = = = = = = = = = =
>
> "JM" <j_m_1967 at hotmail.com> wrote in message
> news:<aiat23$5b0$1 at smc.vnet.net>...
>> Sorry for 'refreshing' this message but does anyone know if I can
>> define the assumption below.
>>
>> I don't want to write specific assumptions for each term in Limit
>> since I have many different variables and forms of a. Is it possible
>> to generalise the assumption?
>>
>> it would really help me (and I really don't want to have to buy any
>> additional maths software).
>>
>>
>> timreh719 at yahoo.com.tw (bryan) wrote in message
>> news:<ahdf97$i36$1 at smc.vnet.net>...
>>> Hi All :
>>>    I am also interesting in the solution of how to make an asumption
>
>>> in Mathematica. I can't find any method in Mathematica. If anybody
>>> has the approch to do this , please send it to my e-mail too , Thank
>
>>> you all ..
>>>
>>> j_m_1967 at hotmail.com (JM) wrote in message
>>> news:<ah8otr$aut$1 at smc.vnet.net>...
>>>> I know that this should be 0 but why can't I get mathematica to
>>>> think likewise.
>>>>
>>>>
>>>> In[4]:= Limit[Sin[a*x]/(a*x),x->Infinity]
>>>>
>>>>               Sin[a x]
>>>> Out[4]= Limit[--------, x -> Infinity]
>>>>                 a x
>>>>
>>>> Is the problem a? How can I specify the properties of or
>>>> assumptions that may be made about a?
>>
>
>
>





  • Prev by Date: Re: Re: Limit[Sin[a*x]/(a*x), x -> Infinity]
  • Next by Date: Re: RE: RE: Installing package "SpreadOption`"
  • Previous by thread: Re: Re: Limit[Sin[a*x]/(a*x), x -> Infinity]
  • Next by thread: Re: Re: Limit[Sin[a*x]/(a*x), x -> Infinity]