Skip to content

Newton root-finding algorithm written in Rust

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE.md
MIT
LICENSE-MIT.md
Notifications You must be signed in to change notification settings

Nateckert/newton_rootfinder

Repository files navigation

newton_rootfinder

crates.io Build Status

newton_rootfinder is a scientific computing rust crate to solve nonlinear equation systems thanks to rootfinding methods.

Focus of the crate

This crate implements Newton's method and other derived methods.

To see a visualization of this method, you can watch this video: Newton's fractal

This crate provides methods applicable for n-dimensional problems.

It provides several parametrization options and a simulation log to monitor the resolution process.

Out of scope

This crate does NOT provide a solver for nonlinear differential equations.

This crate does NOT provide a specific solver for one dimensional problems.

Documentation

Check the documentation on doc.rs

Comparison with other rust crates

For the comparison with other crates that implements several fonctionalities, the module of those crate has been explicited.

Note: Crates may have evolved since this comparison was established.

If you feel that this comparison needs an update, don't hesite to open an issue or to do a pull request !

N-dimensional solver

The following crates are providing solvers based on Newton's method for n-dimensional systems.

newton_rootfinder aims to be the reference crate for n-dimensional rootfinding algorithms and is focused only on that topic.

crate version Advanced
Parametrization
Simulation
Log
Other iterative
algorithms
newton_rootfinder 0.10.0 ✔️ ✔️ ✔️
peroxide::numerical::newton 0.31.7

bacon_sci::roots (0.13.1) also implements n-dimensional methods, but only for polynomials.

1-dimensional solver

If you are looking crates for one dimensional solver, newton_rootfinder is not the right one for you, but the rust ecosystem has several options :

crate version Newton-Raphson Other Iterative methods Analytical methods Error handling
newton-raphson 0.1.0 ✔️
nrfind 1.0.3 ✔️ ✔️
rootfind 0.7.0 ✔️ ✔️ ✔️
roots 0.0.7 ✔️ ✔️ ✔️ ✔️
bacon_sci 0.13.1 ✔️ ✔️ ✔️

Contribution

Check the CONTRIBUTE.md file, help is always welcome !

License

newton_rootfinder is dual licensed, you can choose to use it with either:

About

Newton root-finding algorithm written in Rust

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE.md
MIT
LICENSE-MIT.md

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published