Understanding Brent's root finding method

  • Thread starter Thread starter phantomvommand
  • Start date Start date
AI Thread Summary
The discussion centers on the logic behind checking the difference between b-1 and b-2 when bisect_flag is set to False. The main point raised is whether the goal should be to assess the halving of the interval between the best guesses b, suggesting that the focus should be on abs(b - b-1) instead. A reference to Brent's original publication indicates that unnecessary bisections could slow down convergence for well-behaved functions, highlighting the balance between optimizing performance in typical scenarios while managing potential failures in edge cases. The conversation also notes that this topic is more suited for the Programming and Computer Science forum.
phantomvommand
Messages
287
Reaction score
39
TL;DR Summary
I am unsure about the conditions for rejecting the secant or IQI method in favour of bisection
Screenshot 2025-07-13 at 3.31.49 PM.webp


I am unsure about why in the case where bisect_flag == False, we should check b-1 - b-2. Is the objective not to check that we are halving the interval between our best guesses b, so it should be abs(b - b-1), regardless of whether the previous step was a bisection or not?
 
Technology news on Phys.org
phantomvommand said:
I am unsure about why in the case where bisect_flag == False, we should check b-1 - b-2. Is the objective not to check that we are halving the interval between our best guesses b, so it should be abs(b - b-1), regardless of whether the previous step was a bisection or not?

According to p.50 of Brent's original publication (it is available on archive.org): "practical tests show that this [would slow down] convergence for well-behaved functions by performing unnecessary bisections".

Like many practical algorithms this is a compromise between optimizing performance in the majority of situations whilst avoiding poor performance (or even failure) in pathological cases.

Note that this question probably belongs in the Programming and Computer Science forum. I'll get it moved.
 
Last edited:
  • Like
Likes jim mcnamara, Baluncore and berkeman
Dear Peeps I have posted a few questions about programing on this sectio of the PF forum. I want to ask you veterans how you folks learn program in assembly and about computer architecture for the x86 family. In addition to finish learning C, I am also reading the book From bits to Gates to C and Beyond. In the book, it uses the mini LC3 assembly language. I also have books on assembly programming and computer architecture. The few famous ones i have are Computer Organization and...
I have a quick questions. I am going through a book on C programming on my own. Afterwards, I plan to go through something call data structures and algorithms on my own also in C. I also need to learn C++, Matlab and for personal interest Haskell. For the two topic of data structures and algorithms, I understand there are standard ones across all programming languages. After learning it through C, what would be the biggest issue when trying to implement the same data...

Similar threads

Back
Top