Solver

class Solver(*args)

SolverImplementation of 1D non linear equations.

Parameters:
absErrorpositive float

Absolute error between two successive iterates at the end point. Default value is defined in the ResourceMap via the Solver-DefaultAbsoluteError key is set to 10^{-5}.

relErrorpositive float

Relative error between the two last successive iterates with regards to the last iterate. Default value is defined in the ResourceMap via the Solver-DefaultRelativeError key is set to 10^{-5}.

resErrorpositive float

Absolute threshold on f(x) for accepting a given solution. It is also used as residual error for the least square optimizer. value. Default value is defined in the ResourceMap via the Solver-DefaultResidualError and is set to 0.

maximumFunctionEvaluationint

The maximum number of evaluations of the function. Default value is defined in the ResourceMap via the Solver-DefaultMaximumFunctionEvaluation and is set to 100.

Methods

getAbsoluteError()

Accessor to the absolute error.

getCallsNumber()

Accessor to the number of function calls.

getClassName()

Accessor to the object's name.

getId()

Accessor to the object's id.

getImplementation()

Accessor to the underlying implementation.

getMaximumCallsNumber()

Accessor to the maximum number of function calls.

getName()

Accessor to the object's name.

getRelativeError()

Accessor to the relative error.

getResidualError()

Accessor to the residual error.

setAbsoluteError(absoluteError)

Accessor to the absolute error.

setMaximumCallsNumber(maximumCallsNumber)

Accessor to the maximum number of function calls.

setName(name)

Accessor to the object's name.

setRelativeError(relativeError)

Accessor to the relative error.

setResidualError(residualError)

Accessor to the residual error.

solve(*args)

Solve an equation.

See also

Bisection, Brent, Secant

Notes

This class enables to solve 1D non linear equations :

f(x) = value, \forall x \in [infPoint, supPoint]

if f is a continuous function from \Rset to \Rset, infPoint, supPoint \in \Rset and if f is such that f(infPoint) \times f(supPoint) < 0, then f has at least a zero in the interval [infPoint, supPoint]. In particular, it is used in the root research of a Directional Sampling simulation.

__init__(*args)
getAbsoluteError()

Accessor to the absolute error.

Returns:
absErrorfloat

The absolute error: distance between two successive iterates at the end point.

getCallsNumber()

Accessor to the number of function calls.

Returns:
nEvalint

The number of function calls.

getClassName()

Accessor to the object’s name.

Returns:
class_namestr

The object class name (object.__class__.__name__).

getId()

Accessor to the object’s id.

Returns:
idint

Internal unique identifier.

getImplementation()

Accessor to the underlying implementation.

Returns:
implImplementation

A copy of the underlying implementation object.

getMaximumCallsNumber()

Accessor to the maximum number of function calls.

Returns:
maxEvalint

The maximum number of function calls.

getName()

Accessor to the object’s name.

Returns:
namestr

The name of the object.

getRelativeError()

Accessor to the relative error.

Returns:
relErrorfloat

The relative error: distance between the two last successive iterates with regards to the last iterate.

getResidualError()

Accessor to the residual error.

Returns:
resErrorfloat

The residual errors: difference between the last iterate value and the expected value.

setAbsoluteError(absoluteError)

Accessor to the absolute error.

Parameters:
absErrorfloat

The absolute error: distance between two successive iterates at the end point.

setMaximumCallsNumber(maximumCallsNumber)

Accessor to the maximum number of function calls.

Parameters:
maxEvalint

The maximum number of function calls.

setName(name)

Accessor to the object’s name.

Parameters:
namestr

The name of the object.

setRelativeError(relativeError)

Accessor to the relative error.

Parameters:
relErrorfloat

The relative error: distance between the two last successive iterates with regards to the last iterate.

setResidualError(residualError)

Accessor to the residual error.

Parameters:
resErrorfloat

The residual errors: difference between the last iterate value and the expected value.

solve(*args)

Solve an equation.

Parameters:
functionFunction

The function of the equation function(x) = value to be solved in the interval [infPoint, supPoint].

valuefloat

The value to which the function must be equal.

infPoint, supPointfloat

Lower and upper bounds of the variable x range.

infValue, supValuefloat, optional

The values such that infValue = function(infPoint), and supValue = function(supPoint). infValue must be of opposite sign of supValue.

startingPointsequence of float

Starting point for solving a system of (non linear) equations.

boundsInterval

Bounds for searching the solution of the system of equations.

Returns:
resultfloat

The result of the root research.