Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Popular solvers missing? #21

Closed
xemwebe opened this issue Dec 16, 2019 · 7 comments
Closed

Popular solvers missing? #21

xemwebe opened this issue Dec 16, 2019 · 7 comments

Comments

@xemwebe
Copy link
Contributor

xemwebe commented Dec 16, 2019

in search of a solver in rust i stumbled over this very promising library. However, I missed implementations of popular solver I used quite a lot, e.g. Brent's method (for one dimensional problems) and the methods provided by the ancient minpack package (Levenberg-Marquardt).

I was wondering what's the reason for that. Is it just a matter of priorities or are the any particular reasons to exclude these algoritms?

@stefan-k
Copy link
Member

There are no objections against any solver. This library is in a very early stage and therefore many useful algorithms are still missing. Development has has been a bit slow lately as I've been busy with other responsibilities, but I'm happy to accept pull requests and to provide guidance if you are willing to contribute.

@xemwebe
Copy link
Contributor Author

xemwebe commented Dec 17, 2019

Okay, I just wanted to make sure it is worth the effort to integrate some of this algorithms into your library.

@stefan-k
Copy link
Member

Absolutely, all contributions are welcome :)

@xemwebe
Copy link
Contributor Author

xemwebe commented Dec 18, 2019

I have implemented Brent's method and sent you a pull request.
However, a few questions remain: I haven't seen any place where I could set the required precision. I would assume that these would be ideally handled by the Executor, automatically stopping the process once the required precision is reached, though this would require some input from the solver.
Also, Brent's method require to store some state in between iterations, which is now stored in the Brent struct, since IterState does not seem to be appropriate for this purpose.

@stefan-k
Copy link
Member

Discussion about Brent's method moved to the corresponding PR: #22.

@stefan-k stefan-k mentioned this issue Dec 18, 2019
@stefan-k
Copy link
Member

Version 0.2.6 which includes your implementation of Brent's method was just released.

@stefan-k
Copy link
Member

stefan-k commented Apr 8, 2020

Closing this, feel free to reopen if needed.

@stefan-k stefan-k closed this as completed Apr 8, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants