Re: List, FindRoot, Bessel

• To: mathgroup at smc.vnet.net
• Subject: [mg33655] Re: List, FindRoot, Bessel
• From: bghiggins at ucdavis.edu (Brian Higgins)
• Date: Thu, 4 Apr 2002 19:40:34 -0500 (EST)
• References: <a8g3c5\$b3e\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```First, here is a possible solution:
guess = Table[2.32 + i Pi, {i, 0, 9}];

k /. Map[FindRoot[- k BesselJ[1, k] + 30 BesselJ[0, k] == 0, {k, #}]
&, guess]

{2.32614, 5.34098, 8.37707, 11.4221, 14.4748, 17.5348, 20.602,
23.6762, \
26.7568, 29.8435}

The notation k->2.32614 is a rule. In the help browser you will find
the following info:
"lhs->rhs represents a rule that transforms lhs to rhs"

You can implement this rule using the ReplaceAll operator (/.). Thus
k/.k->2.32614 yields 2.32614.

FindRoot returns results in the form of rules. Thus if you evaluate

k/.FindRoot[FindRoot[- k BesselJ[1, k] + 30 BesselJ[0, k] == 0, {k,
2.32}]
you get  the numerical value.

Cheers,

Brian

"Riadh Alimi" <alimir3 at cti.ecp.fr> wrote in message news:<a8g3c5\$b3e\$1 at smc.vnet.net>...
> Hi !
>
> I'm trying to find the first n roots of an equation involving Bessel
> Functions and to create a List of them.
>
> The best thing I find so far is :
> n = 10;
> For[i = 0, i < n,
>   Print[FindRoot[- k BesselJ[1, k] + 30 BesselJ[0, k] == 0, {k,
>         2.32 + i Pi}]];
>   i++]
>
> And the result I get is :
>
> {k->3.2}
> {k->5.2}
> {k->8.3}
> ....
>
> Does anyone know what {k->3.2} means ? And how I could get only the value
> 3.2 instead of {k->3.2} in order to create a list?
>
> Thank you

```

• Prev by Date: Re: Unexpected result with RSolve?
• Next by Date: Re: List, FindRoot, Bessel
• Previous by thread: Re: List, FindRoot, Bessel
• Next by thread: Re: List, FindRoot, Bessel