Re: sorting list of roots af a transcendental function
- To: mathgroup at smc.vnet.net
- Subject: [mg65275] Re: sorting list of roots af a transcendental function
- From: Paul Abbott <paul at physics.uwa.edu.au>
- Date: Thu, 23 Mar 2006 06:58:40 -0500 (EST)
- Organization: The University of Western Australia
- References: <dvrcdq$a6i$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
In article <dvrcdq$a6i$1 at smc.vnet.net>, Dule <dule23 at gmx.de> wrote: > for calculating a model i need values for x which are given by the > transcendental function Cot[x] == x/a - a/(4*x). a is a parameter 0<a<200. > i obtained the roots with Table and FindRoot: > Table[FindRoot[Cot[x] == x/a - a/(4*x), {x, i}], {i, 1, 50}]] > > I have two questions: > 1. Is there a better way to do this? Yes. Have a look at the RootSearch package by Ted Ersek: http://library.wolfram.com/infocenter/MathSource/4482/ This package returns all the roots over a specified range as a list of replacement rules (see also the more primitive RootsInRange function that appeared in "Finding Roots in an Interval" in The Mathematica Journal 7(2), 1998). > 2. How can i construct a list, where the values for x, which appear > multiple are dropped? Using RootSearch you will not get multiples. The simplest way of removing repeated entries from a list is to use Union Union[{a,b,c,a}] {a, b, c} If entries are not exactly the same then you can use the SameTest option for Union. Cheers, Paul _______________________________________________________________________ Paul Abbott Phone: 61 8 6488 2734 School of Physics, M013 Fax: +61 8 6488 1014 The University of Western Australia (CRICOS Provider No 00126G) AUSTRALIA http://physics.uwa.edu.au/~paul