Find roots of functions of one variable
This crate provides algorithms over a generic type T
to find roots
of functions T
→ T
. It is readily usable for T
being f64
and
f32
. Activating the feature rug
, one can also use it with
[rug::Float
][] and [rug::Rational
][].
Usage
```rust
use root1d::toms748;
fn main() -> Result<(), Box> {
let root = toms748(|x| x*x - 2., 0., 2.).rtol(1e-10).root()?;
println!("root: {}", root);
}
```
For more information, consult the
documentation of the latest release.
Highlights
- Efficient & fully generic code.
- Convenient interface with optional arguments and default termination
criteria.
- Support for non-copy types (for multi-precision numbers) minimizing
the creation of temporary values.
- State of the art root finding algorithm (Toms748) requiring only
few evaluations of the function.