# Learn#

Learn Fortran

Learning resources for beginners and experts alike

Getting Started

Mini-book Tutorials

Getting started

An introduction to the Fortran syntax and its capabilities

How to use the compiler to build an executable program

How to install a Fortran compiler and set up a development environment in Windows, Linux and macOS.

This tutorial collects a modern canonical way of doing things in Fortran.

Fortran Documentation

man-pages for the Fortran Intrinsics

Other Resources

On the web

Fortran wiki A rich collection of Fortran articles and resources in an editable wiki format

Fortran 90 org Fortran Best Practices guide, Python/Fortran Rosetta Stone, Fortran FAQ

Fortran 2018 Standard Interpretation Document J3/18-007r1 F2018, specification of the base Fortran 2018 language

J3 Fortran Proposals a repository for community collaboration on proposals for the Fortran Standards Committee

J3: US Fortran Standards Committee J3 is the US National Body for the international Fortran standards committee

Scivision Fortran 2018 Examples A github repository containing code samples for various Fortran 2018 features

Doctor Fortran Blog A collection of posts on interesting or little-understood aspects of the Fortran language

Online Courses

Programming in Fortran course offered at the Leibniz-Rechenzentrum

The ‘F’ Word - Programming in Fortran modern Fortran for developing an extensible library that can be used to solve conservation laws (PDEs) using spectral and spectral element methods

Kursmaterial für Wissenschaftliches Programmieren (Modern Fortran, 2017) from Bálint Aradi at Bremen Center for Computational Materials Science (German)

Formations Fortran Fortran course from beginner to expert level (French)

Modern Fortran Programming for Chemists and Physicists course by Pekka Manninen from University of Helsinki (includes coarrays)

Coarray tutorial by Thomas Koenig

Parallel Programming Workshop materials from the High-Performance Computing Center in Stuttgart

Programming in Modern Fortran by Philipp Engel

2018 Workshop on Fortran Modernization for Scientific Applications

Scientific Programing and Numerical Computation course by Wu-ting Tsai from National Taiwan University

Introduction to Modern Fortran course given by Nick Maclaren from the University of Cambridge Computing Service, derived from a course by Steve Morgan from the University of Liverpool

Designing and Building Parallel Programs by Ian Foster, contains descriptions of several non-standard Fortran dialects like Fortran M and High Performance Fortran

Parallel programming with Fortran 2008 and 2018 coarrays course by Anton Shterenlikht from the University of Bristol

Professional Programmer’s Guide to Fortran77 by Clive G. Page, University of Leicester, UK

Fortran90 for Fortran77 Programmers by Clive G. Page

Introduction to Computer Programming Using Fortran 95 training materials from ARCHER, the UK National Supercomputing Service

Combining Object-Oriented Techniques with Co-arrays in Fortran 2008 by Robert W. Numrich

Parallel programming in Fortran with Coarrays by John Reid

Introduction to Co-Array Fortran by Robert W. Numrich

Fortran 90 for the Fortran 77 Programmer by Bo Einarsson and Yurij Shokin

Fortran Tutorial older tutorial by Erik Boman, Stanford University

Fortran 90 Tutorial older tutorial by Paul Hargrove and Sarah Whitlock, Stanford University

Fortran 90 Tutorial by C.-K. Shene, Michigan Technologial University

Exploring Modern Fortran Basics by Milan Curcic, excerpt (Chapters 2, 3, and 4) from Modern Fortran - Building Efficient Parallel Applications

In print

Ramkarthik, M. S., and Solanki, P. D. 2021 Numerical Recipes in Quantum Information Theory and Quantum Computing: An Adventure in FORTRAN 90 1st ed Boca Raton. CRC Press

Metcalf, M., Reid, J. and Cohen, M. 2018 Modern Fortran Explained 5th ed Oxford, UK. Oxford University Press

Curcic, M. 2020 Modern Fortran: Building Efficient Parallel Applications 1st ed Shelter Island, NY. Manning Publications

Fehr, H. and Kindermann, F. 2020 Introduction to Computational Economics Using Fortran 1st ed Oxford, UK. Oxford University Press

Markus, A. 2012 Modern Fortran in Practice 1st ed Cambridge, UK. Cambridge University Press

Chivers, I. and Sleightholme, J. 2018 Introduction to Programming with Fortran 4th ed . Springer International Publishing

Chapman, S. J. 2018 Fortran for Scientists and Engineers 4th ed New York. McGraw-Hill Education

Ray, S. 2019 Fortran 2018 with Parallel Programming 1st ed . Chapman and Hall/CRC

Brainerd, W. S. 2015 Guide to Fortran 2008 Programming 1st ed London. Springer-Verlag

Numrich, R. W. 2018 Parallel Programming with Co-arrays 1st ed New York. Chapman and Hall/CRC

Akin, E. 2003 Object-Oriented Programming via Fortran 90/95 1st ed Cambridge. Cambridge University Press

McCormack, D. 2009 Scientific Software Development with Fortran 1st ed None. Lulu Press

Rouson, D., Xia, J., and Xiaofeng, X. 2014 Scientific Software Design: The Object-Oriented Way 2nd ed Cambridge. Cambridge University Press

Chirila, D. B., and Lohmann, G. 2015 Introduction to Modern Fortran for the Earth System Sciences 1st ed Berlin. Springer-Verlag

Clerman, N. S. and Spector, W. 2011 Modern Fortran: Style and Usage 1st ed Cambridge. Cambridge University Press

Hanson, R. J. and Hopkins, T. 2013 Numerical Computing with Modern Fortran 1st ed Philadelphia. SIAM

Oliveira, S. and Steward, D. 2006 Writing Scientific Software: A Guide to Good Style 1st ed Cambridge. Cambridge University Press

Kernighan, B. and Pike, R. 1999 The Practice of Programming 1st ed Reading. Addison-Wesley Professional