## Libraries.Compute.Statistics.Analysis.RootFinder Documentation

This is inspired by Brent's algorithm in apache commons. This class implements the Brent algorithm for finding zeros of real univariate functions. The function should be continuous but not necessarily smooth. The {@code solve} method returns a zero x of the function code f in the given interval [a, b] to within a tolerance 2 eps abs(x) + t} where eps is the relative accuracy and t is the absolute accuracy.

The given interval must bracket the root.

Inherits from: Libraries.Language.Object

## Summary

### Actions Summary Table

ActionsDescription
Compare(Libraries.Language.Object object)This action compares two object hash codes and returns an integer.
Equals(Libraries.Language.Object object)This action determines if two objects are equal based on their hash code values.
Find()Finds the root, if possible, at the given bracket [minimum, maximum].
GetAbsoluteAccuracy()
GetCurrentIteration()
GetFunction()
GetHashCode()This action gets the hash code for an object.
GetInitial()
GetMaxIterations()
GetMaximum()
GetMinimum()
IsError()
SetAbsoluteAccuracy(number absoluteAccuracy)
SetDefaultInitial()
SetFunction(Libraries.Compute.Statistics.Analysis.UnivariateAction function)
SetInitial(number initial)
SetMaxIterations(integer maxIterations)
SetMaximum(number maximum)
SetMinimum(number minimum)

## Actions Documentation

### Compare(Libraries.Language.Object object)

This action compares two object hash codes and returns an integer. The result is larger if this hash code is larger than the object passed as a parameter, smaller, or equal. In this case, -1 means smaller, 0 means equal, and 1 means larger. This action was changed in Quorum 7 to return an integer, instead of a CompareResult object, because the previous implementation was causing efficiency issues.

Example Code

``````Object o
Object t
integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smaller)``````

#### Return

integer: The Compare result, Smaller, Equal, or Larger.

### Equals(Libraries.Language.Object object)

This action determines if two objects are equal based on their hash code values.

Example Code

``````use Libraries.Language.Object
use Libraries.Language.Types.Text
Object o
Text t
boolean result = o:Equals(t)``````

#### Return

boolean: True if the hash codes are equal and false if they are not equal.

### Find()

Finds the root, if possible, at the given bracket [minimum, maximum].

#### Return

number: The root.

number

integer

### GetFunction()

#### Return

Libraries.Compute.Statistics.Analysis.UnivariateAction

### GetHashCode()

This action gets the hash code for an object.

Example Code

``````Object o
integer hash = o:GetHashCode()``````

#### Return

integer: The integer hash code of the object.

number

integer

number

number

boolean