Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What are some good, current sources for learning about and implementing numerical algorithms like those in Numerical Recipes?

I get that for most just using Numpy, GSL or similar library would be sufficient, but what if you really want to implement them yourself.



The main problem is each subsection of a chapter in NR is really a subfield in and of itself, and to adequately describe a decent modern implementation is at least one if not multiple books.

First make sure you're familiar with background issues in numerical analysis/computation such that you're generally familiar with IEEE floating point and its foibles, numerical stability, basic error analysis etc.

Figure out which algorithm you're interested, find a couple of open source implementations (academics generally generate a vast array of these, though many may become abandonware), look at any papers they are associated with/mention and read those. Now you're ready to start writing.

Once you have a basic implementation, most fields have a set of standard problems they benchmark on. Find those and see how you compare on numerical accuracy and performance against the libraries you looked at before.


> First make sure you're familiar with background issues in numerical analysis/computation such that you're generally familiar with IEEE floating point and its foibles, numerical stability, basic error analysis etc.

So, what's the book for learning that?


You might find the book Matters Computational: Ideas, Algorithms, Source Code by Jorg Arndt (the book is freely available) and the accompanying FXT library useful - https://www.jjj.de/fxt/fxtpage.html


The Eigen library (https://eigen.tuxfamily.org) has great attention to numerical robustness and accuracy in it's implementation. The documentation is good, but for the numerical discussions, you'd have to read the source code.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: