Home > Extreme Optimization Mathematics Library for .NET > Reference > Extreme.Mathematics.EquationSolvers Namespace
Represents a root finder that uses the regula falsi or false position algorithm.
For a list of all members of this type, see RegulaFalsiSolver Members.
System.Object
IterativeAlgorithm
EquationSolver
RootBracketingSolver
RegulaFalsiSolver
The regula falsi method, also called the method of false position, is a root bracketing algorithm. It works by approximating the target function by a line. The bracketing interval is divided at the point where this line crosses the axis.
The regula falsi method is superior to the bisection method in that it will, in most cases, converge faster. However, in certain situations it can get 'stuck,' and convergence may actually be slower than the bisection method.
The Dekker-Brent method combines the best of both worlds.
RegulaFalsiSolver inherits from RootBracketingSolver, which in turn inherits from IterativeAlgorithm. All properties of IterativeAlgorithm are available. The AbsoluteTolerance and RelativeTolerance properties set the desired precision as specified by the ConvergenceCriterion property. The default value for both tolerances is SqrtEpsilon (roughly 10-8). MaxIterations sets the maximum number of iterations.
The TargetFunction property is a RealFunction delegate that specifies the function we want to find a root for. The LowerBound and UpperBound properties specify the bounds of the bracketing interval. The target function must have a different sign at each end of this interval.
The Solve method performs the actual approximation of the root. This method returns the best approximation that was found. The Status property indicates whether the algorithm was successful. The EstimatedError property gives an upper bound for the difference between the approximated and the actual root.
Namespace: Extreme.Mathematics.EquationSolvers
Assembly: Extreme.Mathematics (in Extreme.Mathematics.dll)
RegulaFalsiSolver Members | Extreme.Mathematics.EquationSolvers Namespace | RootBracketingSolver | BisectionSolver | DekkerBrentSolver