KrisLibrary  1.0.0
Namespaces | Enumerations | Functions
root.h File Reference

Numerical root-solving routines. More...

#include "function.h"

Go to the source code of this file.

Namespaces

 Math
 Contains all definitions in the Math package.
 

Enumerations

enum  ConvergenceResult {
  ConvergenceX, ConvergenceF, Divergence, LocalMinimum,
  MaxItersReached, ConvergenceError
}
 

Functions

std::ostream & Math::operator<< (std::ostream &out, ConvergenceResult r)
 
ConvergenceResult Math::Root_Bisection (RealFunction &f, Real &a, Real &b, Real &x, Real tol)
 Uses bisection to bracket f's root. More...
 
ConvergenceResult Math::Root_Secant (RealFunction &f, Real x0, Real &x1, int &maxIters, Real tolx, Real tolf)
 Uses the secant method to search for f's root. More...
 
ConvergenceResult Math::Root_SecantBracket (RealFunction &f, Real &a, Real &b, Real &x, int &iters, Real tolx, Real tolf)
 
ConvergenceResult Math::Root_Newton (RealFunction &f, Real &x, int &maxIters, Real tolx, Real tolf)
 Performs Newton's method, which uses the derivative of f to search for it's root. More...
 
ConvergenceResult Math::Root_NewtonBracket (RealFunction &f, Real a, Real b, Real &x, int &maxIters, Real tolx, Real tolf)
 Same as above, but the interval [a,b] must be known to contain a root.
 
ConvergenceResult Math::Root_Newton (ScalarFieldFunction &f, const Vector &x0, Vector &x, int &maxIters, Real tolx, Real tolf)
 Same as Root_Newton(), but takes a scalar field function as input.
 
ConvergenceResult Math::Root_Newton (VectorFieldFunction &f, const Vector &x0, Vector &x, int &maxIters, Real tolx, Real tolf)
 Same as Root_Newton(), but takes a vector field function as input.
 

Detailed Description

Numerical root-solving routines.