Fortran Modernization Workshop Information & Registration
Note: Registration has now closed for this event however, if you wish to join a waiting list please email us.
Date: Monday 24 July 2017 to Wednesday 26 July 2017 (three day workshop)
Times: 09:00 to 18.00 each day
Location: Room C1001, Building C1, Campus Nord Universitat Politècnica de Catalunya (UPC), C/ Gran Capità, S/N 08034, Barcelona, Spain
Note: This course is provided free of charge to all confirmed participants. Attendees are responsible for their own travel and accommodation.
- Attendees must bring a laptop with WiFi capabilities in order to connect to the server for the exercises. The laptop can have either Linux or Windows, and if Windows please ensure that MobaXterm is installed.
- A Guest Wi-Fi account will be provided to all delegates, please request this upon arrival.
- Prompt arrival will be appreciated to allow time for set up.
Cancellations and Queries: If you have registered and find that you are unable to attend or have questions about the course please email us.
The three day computational science-centric practical hands on workshop is aimed at Fortran programmers who want to write modern code, or modernize existing codes, to make it more readable and maintainable by encouraging good software engineering practices. Adopting good software practices makes codes more amenable to optimization and parallelization, and the path to making it a community code a whole lot easier.
Topics will include:
- Software engineering for computational science;
- Modern Fortran standards and how to write optimized and efficient Fortran;
- NetCDF and HDF5 scientific file formats for data sharing in Fortran;
- GNU Automake to automate the build process;
- pFUnit unit testing framework for testing Fortran codes;
- Doxygen for Fortran code documentation;
- Git version control for collaborative code development;
- In-memory visualisation using PLplot in Fortran;
- IEEE Floating Point Exception Handling
- Software verification and portability using the NAG Fortran Compiler
- Fortran interoperability with C, Python and R;
- Introduction to parallelism for Fortran;
- Fortran code verification using the CamFort tool;
- Object oriented programming in Fortran 2003.
Below is some supplementary documentation for the workshop.
- Code peer reviewing best practice
- Doxygen code documentation manual
- Expressing object oriented Fortran using Fortran 90
- Fortran compiler guide
- Fortran compiler comparison
- NAG Fortran Compiler, Release 6.1
- HDF5 file format reference manual
- MPI 3.0 reference
- NetCDF guide
- OpenACC guide
- OpenMP quick reference card
- pFUnit manual
- CUDA Fortran guide
- PLplot manual