MathGroup Archive 2010

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

Search the Archive

Re: RootSearch issue

  • To: mathgroup at
  • Subject: [mg112782] Re: RootSearch issue
  • From: "Ted Ersek" <ersekt at>
  • Date: Thu, 30 Sep 2010 04:52:04 -0400 (EDT)


there was a question about why RootSearch couldn't find roots when it had 

to search a large range {x,xmin,xmax}. The setting of  Options[ RootSearch,
InitialSamples ] 

indicates the number of samples to take before using root finding


RootSearch will look for adjacent pairs of initial samples  (a,f[a]),
(b,f[b]) where 

f[a]*f[b]<0 and use Brent's method to find a root between these samples.

RootSearch also looks for adjacent triplets of initial samples  (a,f[a]),
(b,f[b]), (c,f[c]) 

such that   And[ ( 0 < f[b]/f[a] < 1  ), ( 0 < f[b]/f[c] < 1 )].  In that
case an iterative method 

is used to find a root between (a,c). Of course if some of the initial
samples happen to be 

roots they are identified as roots.


The setting of the option InitialSamples should be sufficiently large that
this approach will 

identify an interval containing each root.   If your function has billions
of oscillations

between (xmin, xmax) you could easily miss roots if you don't take billions
of initial samples.



The new RootSearch version is not available because I haven't finished it. 

I still have about sixty hours of work left on it, and obligations related
to family & my job don't 

leave a lot of time for Mathematica. However, I will continue to work on it
because I can see 

more than a few people want the new version. The new version is the result
of a lot of work 

to make subtle improvements. Because the improvements are subtle you
shouldn't feel like 

you are missing out on something big.


Ted Ersek

  • Prev by Date: Re: Root Finding Methods Gaurenteed to Find All Root Between (xmin, xmax)
  • Next by Date: Re: Mathematica calculates RSquared wrongly?
  • Previous by thread: RootSearch issue
  • Next by thread: Test for dialog existence