Portability | portable |
---|---|
Stability | alpha |
Maintainer | mik@konecny.aow.cz |
Interval Newton's method for root finding.
To be used for obtaining functions out of their inverse(s) over various intervals.
- erNewton_FullArgs :: ERIntApprox ira => (EffortIndex -> ira -> ira, EffortIndex -> ira -> ira) -> ira -> ira -> Int -> EffortIndex -> ira
- erNewton_mdfd_FullArgs :: ERIntApprox ira => (EffortIndex -> ira -> ira, EffortIndex -> ira -> ira) -> ira -> ira -> Int -> EffortIndex -> ira
Documentation
:: ERIntApprox ira | |
=> (EffortIndex -> ira -> ira, EffortIndex -> ira -> ira) | a function and its derivative |
-> ira | a starting point |
-> ira | a lower bound of the absolute value of the derivative over the working interval |
-> Int | number of iterations |
-> EffortIndex | the initial index to use for argument function and its derivative |
-> ira | the result |
:: ERIntApprox ira | |
=> (EffortIndex -> ira -> ira, EffortIndex -> ira -> ira) | a function and its derivative |
-> ira | a starting point |
-> ira | The minimum of absolute value of derivative over the working interval |
-> Int | number of iterations |
-> EffortIndex | It triggers the initial index to be called by the argument function and its derivative. |
-> ira | the result |
Modified Newton Method Notes:
- It has a cubic convergence speed, as opposed to the original Newton's square convergence speed.
- It does not deal with multiple roots.
- Per iteration, it makes two queries on the derivative, so it best suits the cases where computation of the derivative is at most as expensive as the function itself.