Prominent Fortran publications

I’m in the process of updating the HPE Cray Compiler Environment’s “Getting Started with Fortran” section (current version is at https://cpe.ext.hpe.com/docs/latest/getting_started/CPE-CCE-Fortran.html) and we currently have a “Related Fortran Publications” section which seems a bit dated to me.

  • Metcalf, M., J. Reid, and M. Cohen: Modern Fortran Explained, 5th Edition. Oxford University Press, 2018. ISBN 978-0-198-81189-3.
  • Chivers, Ian, and Sleightholme, Jane: Introduction to Programming with Fortran, 4th Edition. Springer, 2018. ISBN 978-3-319-75501-4.
  • Chapman, Stephen J.: Fortran for Scientists & Engineers, 4th Edition. McGraw Hill, 2018. ISBN 978-0-073-38589-1.

I am updating to the 9th edition of Modern Fortran Explained and adding Milan’s Modern Fortran book. Are there any other publications the community believes I should consider for inclusion?

2 Likes

Maybe

Ray, Subrata: Fortran 2018 with Parallel Programming (CRC Press)

could also be mentioned.

2 Likes

Obviously Modern Fortran Explained, but I also suggest Modern Fortran in Practice. These are the two books I learned the language parts of Fortran from. I feel that Fortran has a pretty bad selection of learning resources for new people to the language, but that is another topic.

More specialized books I have used parts of are:

Victor Eijkhout’s Art of HPC
Oliveira and Stewart’s Writing Scientific Software: A Guide to Good Style
Gropp et al’s Using MPI (there is also a sequel to this book and books on OpenMP but I haven’t read any parts of them so I can’t speak on how good they are)

These books use a mix of C++ and Fortran.

1 Like

A somewhat older book, but more of a guide for style is “Modern Fortran: Style and usage” by Norman Clerman and Walter Spector (2012). It is basically a book of tips and style guides that improve program correctness and readability.

(it is also a good reference for anyone writing linters or in-house style guides).

Welcome to the forum! I’m happy that you’ve found the book useful. It was a first effort for both of us.

Norm and I wrote it with F2003 as a basis, with references to a couple of F2008 features. Considering the state of compilers at the time, it was a stretch. (Even today, gfortran doesn’t fully support F2003 PDTs!)

We’d hoped to create a web site with errata (there are a few) and additional examples. But it never happened…

For someone with some programming experience but is new to Fortran, I would also recommend Ed Jorgensens’s book Introduction to Programming Using Fortran 95/2003/2008. This book covers the basics of Fortran programming and provides a foundation for learning the more advanced features discussed in the other references. A PDF of the book is available at the link above.

2 Likes

I have liked two books very much:

  • Modern Fortran in practice, Arjen Markus

  • Modern Fortran: Building Efficient Parallel Applications, Milan Curcic

The first book introduced me to the new features of modern Fortran; the second one has been a reference in building parallel applications.

2 Likes

@tmj Note Modern Fortran Explained: Incorporating Fortran 2023 (its companion site with errata and code) already mentioned was updated in 2024, i.e. now available in the 6th edition.

2 Likes

That’s a great book. The chapter on OpenMP is very useful