newton_rootfinder

Crates.ionewton_rootfinder
lib.rsnewton_rootfinder
version0.11.0
sourcesrc
created_at2020-05-07 15:24:02.984975
updated_at2024-10-17 09:45:30.128869
descriptionNewton based methods for root finding
homepage
repositoryhttps://github.com/Nateckert/newton_rootfinder
max_upload_size
id238615
size418,659
Nateckert (Nateckert)

documentation

https://docs.rs/newton_rootfinder/

README

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:

Commit count: 162

cargo fmt