Advanced features of modern Fortran


This course will cover the more advanced features of modern Fortran and will be a mixture of lectures and practicals. The content of the course covers data structuring, object oriented programming, generic programming, operator overloading and an introduction to parallel programming.

Key areas
  • modules and information hiding - public, private and protected
  • keyword and optional subroutine arguments
  • generic programming
  • elemental procedures
  • operator overloading
  • simple data structuring
  • Object Oriented Programming (OOP) and inheritance
  • OOP and polymorphic programming
  • basic overview of parallel programming
  • basic language features that support parallel programming
    • whole array features
    • forall construct
    • where construct
    • pure procedures
  • automatic parallelisation
  • compiler switches for optimisation and parallelisation
  • introduction to:
    • Fortran and OpenMP
    • Fortran and MPI
    • Coarray Fortran


Attendance on the Introduction to modern Fortran course or a good grounding in modern Fortran.

Course material

The course is based on Introduction to programming with Fortran (3rd edition)


For more information please contact