PRACE PATC Course: Advanced Fortran Topics


Date: Monday, September 11 - Friday, September 15, 2017, 9:00-18:00
Location: LRZ Building, Garching/Munich, Boltzmannstr. 1

This course, partly a PRACE Advanced Training Center (PATC) course (tbc), is targeted at scientists who wish to extend their knowledge of Fortran to cover advanced features of the language.

Topics covered include:

Days 1-3:

  • Best Practices
    • global objects and interfaces
    • abstract interfaces and the IMPORT statement
    • object based programming
  • Object-Oriented Programming
    • type extension, polymorphism and inheritance
    • binding of procedures to types and objects
    • generic type-bound procedures
    • abstract types and deferred bindings
  • IEEE features and floating point exceptions
  • Interoperability with C
    • mixed language programming patterns
  • Fortran 2003 I/O extensions

Days 4-5 (PATC course, support by PRACE still has to be approved):

  • OO Design Patterns: application of object-oriented programming
    • creation and destruction of objects
    • polymorphic objects and function arguments
    • interacting objects
    • dependency inversion: submodules and plugins
  • Coarrays
    • PGAS concepts and coarray basics
    • dynamic entities
    • advanced synchronization
    • parallel programming patterns
    • recent enhancements: collectives, events, teams, atomic subroutines
    • performance aspects of coarray programming

To consolidate the lecture material, each day's approximately 4 hours of lecture are complemented by 3 hours of hands-on sessions. The last 2 days of the course are a PATC event.


will be published once available


Course participants should have good knowledge of the Fortran 95 standard (such as covered in the February course at LRZ), and also basic UNIX/Linux knowledge (e.g. shell commands, simple scripts, editors like vi or emacs).

Language: English
Teachers: R. Bader, G. Brietzke
Registration: Not available yet.
Please contact us if you only want to participate in the final 2-day PATC part (tbc) of the course.
Contact: Dr. Volker Weinberg (LRZ)
PATC-Webpage: PRACE support to be confirmed