Advanced Fortran Programming @ CSC
Date: 2 - 4 December 2014
This course gives an introduction to more modern features of the Fortran 2008 standard. Among subjects are more flexible handling of dynamically allocated objects, operator overloading, object oriented features and language interoperability. Thereafter an introduction to Co-Array Fortran (CAF) extensions is given as way to express distributed memory parallelism.Learning outcome
At the end of the course you will be able to write and understand Fortran 2008 programs, which utilize more advanced concepts. You also will be able to write small parallel programs using CAF extensions.Pre-requisites
The PATC course Fortran 95/2003 or equivalent knowledge in Fortran 95/2003. Using Unix/Linux as well as knowledge for how to use text editors like emacs or vi. Basic knowledge of C-language will also be helpful when teaching language interoperability.Price: Free of chargeLecturers: Mikko Byckling (CSC) & Sami Ilvonen (CSC)Agenda:Day 1: Tuesday, December 2, 2014 (at 9:00 - 16:00)
09:00 - 09:45 Course introduction
09:45 - 10:00 Coffee break
10:00 - 11:00 Useful new features in Fortran 2003/2008
11:00 - 12:00 Exercises
12:00 - 13:00 Lunch break
13:00 - 14:00 Types and procedure pointers
14:00 - 14:45 Exercises
14:45 - 15:00 Coffee break
15:00 - 16:00 Object oriented Fortran
Day 2: Wednesday, December 3, 2014 (at 9:00 - 16:00)
09:00 - 09:45 Advanced object oriented Fortran
09:45 - 10:00 Coffee break
10:00 - 12:00 Exercises
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 Demo: Dynamic linking
Day 3: Thursday, December 4, 2014 (at 9:00 - 16:00)
09:00 - 09:45 Introduction to Fortran coarrays
09:45 - 10:00 Coffee break
10:00 - 11:00 Exercises
11:00 - 12:00 More features of Fortran coarrays
12:00 - 13:00 Lunch break
13:00 - 14:00 Exercises
14:00 - 14:45 Advanced Fortran coarrays
14:45 - 15:00 Coffee break
15:00 - 15:45 Exercises
15:45 - 16:00 Wrap-up
Event types:
- Workshops and courses
Activity log