Description
This course covers the modern features of the Fortran programming language. Topics include object-oriented features, language interoperability and several other enhancements available at the Fortran 2008 standard. In addition, a way to express distributed memory parallelism via Fortran coarrays will be discussed in detail.
Learning outcome
The course provides an overview on all the relevant features of Fortran beyond the 95 standard. You also will be able to write parallel programs using the Fortran coarrays concept.
Prerequisites
Solid knowledge of Fortran 95/2003. The concepts discussed in the PATC introduction course Fortran Programming for Scientific Computing is the minimum. Knowledge of C will also be needed for understanding topics on language interoperability. Some familiarity with object-oriented programming concepts will be assumed. Some knowledge of parallel programming with message-passing interface (MPI) will be assumed when discussing the coarrays concept.
Agenda
Day 1: Monday, March 26
- 09.00-09.15 Course introduction
- 09.15-10.00 Useful new features beyond F95
- 10.00-10.15 Coffee break
- 10.15-11.00 Advanced topics in Fortran I/O
- 11.00-11.45 Exercises
- 11.45-12:00 Working with Fortran compilers
- 12.00-13.00 Lunch break
- 13.00-14.00 Interoperability with C
- 14.00-14.45 Exercises
- 14.45-15.00 Coffee break
- 15.00-16.00 Exercises
Day 2: Tuesday, March 27
- 09.00-09.45 Introduction to Fortran coarrays
- 09.45-10.00 Coffee break
- 10.00-11.15 Exercises
- 11.15-12.00 More coarray features
- 12.00-13.00 Lunch break
- 13.00-14.00 Exercises
- 14.00-14.45 Advanced topics in coarrays
- 14.45-15.00 Coffee break
- 15.00-16.00 Exercises
Day 3: Wednesday, March 28
- 09.00-10.00 Additional capabilities of Fortran types, procedure pointers
- 10.00-10.15 Coffee break
- 10.15-11.00 Exercises
- 11.00-12.00 Type extensions, type-bound procedures
- 12.00-13.00 Lunch break
- 13.00-14.00 Exercises
- 14.00-14.45 More complex data structures with Fortran
- 14.45-15.00 Coffee break
- 15.00-16.00 Exercises
Lecturers: Juhani Kataja (CSC), Pekka Manninen (CSC)
Language: English
Price: Free of charge