Fast algorithm to find root of strictly decreasing function

Click For Summary
SUMMARY

The fastest algorithm to find the closest root of a strictly decreasing function is the Newton-Raphson Method, which does not require the explicit calculation of the derivative. If the derivative is available, Newton's tangent method is preferred; otherwise, the secant method can be utilized. The discussion emphasizes the importance of ensuring that the function value remains positive to a specified error margin, never dipping below zero. The implementation of a numerical derivative using a small delta value is also highlighted as a practical approach.

PREREQUISITES
  • Understanding of Newton-Raphson Method
  • Familiarity with secant method
  • Basic knowledge of numerical differentiation
  • Experience with strictly decreasing functions
NEXT STEPS
  • Study the implementation of the Newton-Raphson Method in various programming languages
  • Learn about the secant method and its applications
  • Explore numerical differentiation techniques for function approximation
  • Investigate the properties of strictly decreasing functions and their implications in root-finding algorithms
USEFUL FOR

Mathematicians, software developers, and engineers involved in numerical analysis, particularly those focused on root-finding algorithms for strictly decreasing functions.

dabd
Messages
25
Reaction score
0
What is the fastest algorithm to find the closest root (such that the function value at that point is positive to an error but never negative, if not exactly zero) for a strictly decreasing function?
 
Technology news on Phys.org
If you can find the derivative of the function, Newton's tangent method, otherwise secant method.
 
dabd said:
What is the fastest algorithm to find the closest root (such that the function value at that point is positive to an error but never negative, if not exactly zero) for a strictly decreasing function?

In the Newton-Raphson Method, you do not need to find the derivative instead

Code:
private static double df(double x) {
		double del=0.000001;
		double x0=f(x+del)-f(x);
		x0=x0/del;
		return x0;
	}
 

Similar threads

  • · Replies 30 ·
2
Replies
30
Views
7K
Replies
9
Views
3K
Replies
14
Views
3K
Replies
1
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 1 ·
Replies
1
Views
975
  • · Replies 16 ·
Replies
16
Views
5K
Replies
3
Views
2K