MathGroup Archive 2000

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

Search the Archive

Re: how to find roots of Bessel zero's

  • To: mathgroup at smc.vnet.net
  • Subject: [mg22778] Re: [mg22764] how to find roots of Bessel zero's
  • From: Hartmut Wolf <hwolf at debis.com>
  • Date: Sat, 25 Mar 2000 03:58:16 -0500 (EST)
  • Organization: debis Systemhaus
  • References: <200003240828.DAA17987@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Yury Logvin schrieb:
> 
> If I need find zero's of Bessel functions
> e.g.   BesselJ0[x] = = 0
> ( numerical values of x, not analytical ones),
> can I do this with Mathematica
> using commands  like Solve or Roots ?
> 

Yury,

since this function is oscillatory, to find the right zero depends on
supplying the right starting values. If you look for an asymptotic
expansion for BesselJ[0,x] e.g. in Abramowitz, Stegun you might compare:


(g[#/2 + 1] = 
        Plot[{BesselJ[0, x], Cos[x - Pi/4] (Pi x/2)^-(1/2)}, {x, 10^# -
1, 
            10^# + 9}, DisplayFunction -> Identity,
          PlotRange -> {Automatic, {-1, 2} (Pi 10^#/2)^-(1/2)}, 
          PlotStyle -> {Hue[0.55, 1., 0.8], Hue[0., 1., 0.5]}]) & /@  
  Range[0, 5, 2]

Show[GraphicsArray[List /@ Array[g, {3}]]]

So the first ten zeroes are found with:

(FindRoot[BesselJ[0, x] == 0, {x, #}] &) /@ 
( Pi/4 (4 #  - 1) &) /@ Range[10]

{{x -> 2.40483}, {x -> 5.52008}, {x -> 8.65373}, {x -> 11.7915}, {x -> 
      14.9309}, {x -> 18.0711}, {x -> 21.2116}, {x -> 24.3525}, {x -> 
      27.4935}, {x -> 30.6346}}

compare with

({x -> Pi/4 (4 #  - 1)} &) /@ Range[10] // N

{{x -> 2.35619}, {x -> 5.49779}, {x -> 8.63938}, {x -> 11.781}, {x -> 
      14.9226}, {x -> 18.0642}, {x -> 21.2058}, {x -> 24.3473}, {x -> 
      27.4889}, {x -> 30.6305}}


Hartmut


  • Prev by Date: Re: Q: Plot3D bug?
  • Next by Date: Re: newby plotting question
  • Previous by thread: how to find roots of Bessel zero's
  • Next by thread: Re: how to find roots of Bessel zero's