WebCab Optimization
v2.6
(J2EE Edition)

com.webcab.ejb.math.optimization.unidimensional
Class LinearLocate

java.lang.Object
  |
  +--com.webcab.ejb.math.optimization.unidimensional.LinearLocate
All Implemented Interfaces:
LocateAlgorithm, Serializable

public class LinearLocate
extends Object
implements LocateAlgorithm

The golden section search algorithm. This is a general iterative algorithm that searches the extremum using golden section search. The convergence is linear, meaning that successive significant figures are won linearly with additional function evaluations. The method does not use any kind of parabolic interpolation.

See Also:
LocateAlgorithm, BrentLocate, BrentDerivLocate, ParabolicIterativeLocate, CubicDerivLocate, ParabolicLocate, Serialized Form

Constructor Summary
LinearLocate()
           
 
Method Summary
 double locate(Bracket br, UniDimensionalFunction f, double tol, int maxiter)
          Shrinks the bracketing interval until a satisfactory approximation for the extremum it contains can be found.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LinearLocate

public LinearLocate()
Method Detail

locate

public double locate(Bracket br,
                     UniDimensionalFunction f,
                     double tol,
                     int maxiter)
              throws TooManyUniDimensionalIterationsException,
                     InvalidUniDimensionalFunctionException
Shrinks the bracketing interval until a satisfactory approximation for the extremum it contains can be found.

Specified by:
locate in interface LocateAlgorithm
Parameters:
br - The bracket with all three points initialized.
f - The function.
tol - The tolerance used as a termination criteria.
maxiter - If the number of iterations exceeds this number TooManyUniDimensionalIterationsException will be thrown.
Returns:
The approximation for the point where the function has an extremum.
Throws:
TooManyUniDimensionalIterationsException - thrown if the number of iterations in locate algorithms is greater than maxiter.
InvalidUniDimensionalFunctionException - thrown if the user function returns invalid values like infinity or NaN.

WebCab Optimization
v2.6
(J2EE Edition)