167 pointsby nill02 days ago5 comments
  • rramadass2 days ago
    This book sits somewhere between "Hackers Delight" and "Numerical Recipes". The coverage is truly broad and detailed. It walks you through an implementation by the author called FXT (a library of algorithms) - https://www.jjj.de/fxt/ and https://www.jjj.de/

    For some reason, the book is not well known and the author hates to advertise. But this is truly one of a kind book and deserves all the adulation from us (i own a print version).

    • nyankosensei2 days ago
      I completely agree that this is a great resource. BTW, the Springer site book link is https://link.springer.com/book/10.1007/978-3-642-14764-7. I’m thankful that the author has made the book and code freely available.

      The author also co-authored a book about historical and state-of-the-art pi computations called Pi Unleashed (https://link.springer.com/book/10.1007/978-3-642-56735-3). The code and additional resources are available at https://extras.springer.com/?query=978-3-642-56735-3. Though somewhat dated (circa 2000), there’s a lot of fascinating information in the 229 Mb zip download, including a 133 char C program (pitiny.c) that computes 15000 digits of pi.

      • ZeroTalent2 days ago
        Glad you mentioned Pi Unleashed. That tiny pitiny.c program is legendary in its own right. It really highlights the minimalism—squeezing out every bit of performance and precision.
    • Alifatisk2 days ago
      I borrowed Hackers Delight from my local library, even though I didn’t fullt grasp every chapter I still found the book interesting and beautiful. Planning on buying it.

      I’ll check out Numerical Recipes and Matters Computational ideas etc.

      • tgv2 days ago
        Numerical Recipes is an old book, and received its share of criticism. It's also expensive, so beware before you buy. E.g. "`This chapter describes numerical methods for ODE's from the viewpoint of 1970."
      • rramadassa day ago
        I am quite sure that very few people can "fully grasp" everything in the three books mentioned. The subject matter is inherently difficult. The way i approach them is as a catalog of reference implementations which i can consult, copy from and modify as needed. The idea is to become aware of knowledge that one didn't know before.

        Some caveats; consider criticisms of Numerical Recipes book as advisory and not gospel. When reading these sorts of books you are looking to understand the algorithms (w.r.t. a reference implementation) and not bother with programming style/software engineering discipline etc. which are all irrelevant in this case. The specialized domain knowledge is what is important and not software techniques.

        Here are some links to the above;

        1) Numerical Recipes book website - https://www.numerical.recipes/

        2) Wikipedia - https://en.wikipedia.org/wiki/Numerical_Recipes

        3) Alternatives - https://www.stat.uchicago.edu/~lekheng/courses/302/wnnr/nr-a...

      • sfpotter2 days ago
        I would give Numerical Recipes a pass.
        • leoc2 days ago
          Is there a single more modern and/or generally better alternative, as far as you know?
          • sfpotter2 days ago
            There isn't a single authoritative reference. It really depends on what you're doing. Numerical analysis and scientific computing are huge fields. If you have a specific area you're interested in, I can probably point you in the right direction. (Source: I did a PhD and postdoc in this field and research and develop numerical methods every day in industry. I have... a lot of books on this topic.)
          • rramadassa day ago
            I disagree with the gp; Numerical Recipes should be the first one to consult simply because its breadth of coverage gives you a very good starting point. Then checkout other books based on your needs.

            However, here are some suggested alternatives - https://www.stat.uchicago.edu/~lekheng/courses/302/wnnr/nr-a...

            • sfpotter18 hours ago
              Another good approach can be to start by prototyping something in MATLAB, numpy/scipy, or Julia, and then consult their docs when whatever you're doing is falling short in some way. All of these computing environments have extensive references. Look up the function you're using in their docs and you'll find links to papers and books with more context. Being able to "help yourself" in numerical methods basically requires that you're comfortable in the literature. This assumes that you have a very sophisticated and precise need which is not satisfied by what existing libraries offer.

              If you have some quick one-off need, copying something from Numerical Recipes is a bad idea. Bugs in numerical methods can be very subtle and difficult to diagnose in a way that normal discrete algorithms aren't. If you've never heard of the asymptotic order of convergence of a numerical algorithm, how are you possibly going to detect that you have a bug there, let alone fix it? In my experience, most people who have one-off needs don't have the requisite background in numerical analysis to get themselves out of trouble when things go wrong. A better approach is to just use a library. There are lots of options for simple stuff.

              If you do have a sophisticated need, you will outgrow what Numerical Recipes offers very quickly. There are some good books in the list you linked, but that list is also very outdated. Notably absent: any of Trefethen's books (ATAP in particular), Nocedal and Wright's "Numerical Optimization", Stoer & Bulirsch, anything about convex optimization, anything about the finite element method, anything about geometry or CAD, anything about Monte Carlo, anything about special functions, and on and on...

              • leoc13 hours ago
                Would you have the time and inclination to have a go at doing your own list sometime, perhaps? I'm sure it might be very widely appreciated.
              • rramadass12 hours ago
                The point was not to dismiss NR but use it as a good start to know about various algorithms (ignore the idiotic software licensing terms). Agreed that for usage itself, a well known library is to be preferred (my first goto is GSL) unless one knows (and needs) better.

                The list of alternatives itself is from 2001 and hence does not have later published books. A google search brings up other discussions on alternatives.

  • sarosh2 days ago
    This is the PDF of the following 2011 book focused on FFTs and fast arithmetic for both real numbers and finite fields. https://www.amazon.com/Matters-Computational-Ideas-Algorithm... The author is Jörg Arndt: born 1964 in Berlin, Germany. Study of theoretical physics at the University of Bayreuth, and the Technical University of Berlin, Diploma in 1995. PhD in Mathematics, supervised by Richard Brent, at the Australian National University, Canberra, in 2010.
    • Pinus2 days ago
      Given the title, I expected him to be a major general!
    • 2 days ago
      undefined
  • cytocync2 days ago
    [dead]
  • sidcool2 days ago
    [flagged]
    • djmips2 days ago
      But we will download it and put it in our special folder.
      • MonkeyClub30 minutes ago
        >> This is so enticing to read, but alas, life is so short.

        Seneca has a brief treatise "On the brevity of life" that counters this exact feeling.

        In sum, it's not that life is too short (and the art too long), it's rather that we're not optimal in our use of life.

        It's worth a read - or a save in the special folder :)

      • anonzzzies2 days ago
        ... next to my 40000 other papers / books / sites that I MUST read.
        • betimsl2 days ago
          Glad that I'm not the only one doing just that.
          • gessha2 days ago
            If only we spent less time collecting things on Hacker News and more time actually pursuing our interests…
            • anonzzzies2 days ago
              I have reality -> that's the thing i'm working on, which happens to be a bunch of very hard problems which I need resolved as that's for a client. Then I have a dream -> that's the thing I want to do before I expire. And most theory is for the dreams, but the 'easier' project already needs a lot of research & effort.
            • sidcool2 days ago
              May be collecting things on HN is the interest of people here.
    • 2 days ago
      undefined
  • shsj2 days ago
    [flagged]