Introduction to Fortran for Scientific Computing

Monday, 16 November 2020 09:00 to Thursday, 19 November 2020 18:00
Massimiliano Guarrasi

This course will be held in Italian.

Registration will open about three months before the course/school starts.

Coordinating teacher: M.Guarrasi


Fortran is among the earliest high level programming languages and the first one to be standardized.
The specific features of the language and a widespread experience acquired in coding allow Fortran 
compilers to build highly optimized executables. The major revisions of the standard (77/90/2003) 
give the chance to improve more and more the code design, and this, along with the large number 
of mathematical functions included and an extensive collections of highly tuned scientific packages,
make Fortran a good candidate in the area of numerical, scientific, engineering and technical 
Fortran 90, the ISO standard replacing the previous 77 release, adds many innovations: 
from the derived types which may be defined by the user, to a specific syntax 
to handle dynamically allocated memory. Fortran 2003 further enlarges the potentiality of 
the language by proposing (among other things) the support for object-oriented programming 
and a standard way to interoperate with C.  Nowadays, Fortran compilers are available for a 
very large amount of system facilities, from workstations to massively-parallel systems.
In the last few years also a version of FORTRAN (named CUDA Fortran) for running on Nvidia GPUs 
was developed. 
In the framework of this course we will give an introduction to the most important command of 
Fortran 90/2003 standard, including also object oriented programming model with Fortran. 
During the afternoon of the last day also a short introduction to CUDA Fortran programming 
model will be given.



By the end of the course the student will be able to: 

  • understand the basic elements of the language (type, variable, operator, expression, function, statement, flow control construct)
  • structure a program in code units (program, function, subroutine and module)
  • manage arrays and dynamic memory
  • define and use derived types with elements of object programming
  • understand the best practices on the implementation of some typical scientific cases
  • have a first look to CUDA Fortran


Target audience:

Programmers of scientific and technical computing, which may benefit from the knowledge and usage of the main features available in Fortran.


Base informatics. Experience with Linux Operative Systems. 
Elements of procedural programming: variables, expressions, execution flow, functions.
Use of basic informatics tools: line commands, editors, ... 
Experiences in Fortran 77 may be helpful.

Research Institutions
4 dd

Next courses

Any question?

For HPC and computer graphics courses, write to


Cineca is a non profit Consortium, made up of 70 Italian universities, 5 Italian Research Institutions and the Italian Ministry of Education.

Today it is the largest Italian computing centre, one of the most important worldwide. With more seven hundred employees, it operates in the technological transfer sector through high performance scientific computing, the management and development of networks and web based services, and the development of complex information systems for treating large amounts of data.

It develops advanced Information Technology applications and services, acting like a trait-d'union between the academic world, the sphere of pure research and the world of industry and Public Administration. .

Visit the Cineca website