Source: https://www.archer.ac.uk/training/virtual/2019-06-26-Modern-Fortran/Modern-Fortran-VirtualTutorial26-06-19.pdf