Welcome to AE Resources
Converted document Converted document

FORTRAN 90+: INTRODUCTION

Fortran (The IBM Mathematical Formula Translating System) is a coding language that permits a user to write and run specialized routines. Fortran - both Fortran 90 and its earlier version 77 - are still very heavily utilized by the engineering community, in particular for the solution of very large matrix systems such as those found in fluid mechanics. Fortran is still the most efficient programming language for these large-scale computations (no matter what others doing simpler computations may say!). It is the most popular language used in high performance computing (HPC) systems.
The newer versions of Fortran, that is Fortran 90/95/2003/2008 are very similar to Matlab and C, so if one knows how to program in either of those languages, learning these newer versions of Fortran (denoted henceforth as 90+) is not difficult. Primarily there are some syntax changes to learn. Fortran 90+ uses a free-form or modular style, whereas Fortran 77, which is character based, required the programmer to start on a prescribed column; a hold over from the use of actual punch (Hollerith) cards. Fortran 90 became an ANSI standard in 1991.
In the past, the acronym was capitalized (FORTRAN), but newer references refer to it in title case (Fortran). Minor revisions to Fortran 90, primarily for applications on HPC systems, were released as Fortran 95. Major and minor revisions are underway, known as Fortran 2003 and 2008. The focus of these pages will be on Fortran 90/95, which are widespread, but will note newer features of Fortran 2003/2008. The reason for this is that many codes are written in Fortran 90/95, and some compilers have not been updated to Fortran 2003/2008. It is important to keep these differences separate if working with a Fortran 90/95 compiler.
In using these pages, example code and commands will be presented using different fonts:
This is how example code will look.
Where the filename or other input will need to be replaced in example code, it will be enclosed in  <  >  symbols. Options are enclosed in [].
Put the <filename> inside the < >.  
[Options] are not necessary and are denoted by [ ].
Command lines where the user interacts with the computer will be denoted with  >  > :
>>  This is the computer response.  It is not output from the code.