Why program?

Valuable skill for scientists.

Tailor programs according to one's needs. Optimum control over what a program is doing.

Appreciation of other people's programs.

Why Fortran?

Designed for scientific and technical (engineering) computing.

Moderate slope of learning curve. Good choice as the first programming language for science students.

(Cf. title of the course, Programming "with" Fortran, rather than "in" Fortran; subtle difference.)

Well suited for part-time programmers (scientists who need to program every now and then).

Easy handling of arrays (vectors, matrices, higher dimensions).

Allows excellent optimization by compiler. Also vectorization, parallelization.

High performance computing (HPC). High Performance Fortran (HPF) for multiprocessor parallel computers.

Who uses Fortran?

"Real programmers". Number crunching

Nuclear physics (LANL Los Alamos Natl. Lab., CERN), energy, weapons

Weather forecast

Finite elements (engineering); Navier-Stokes eq.; Computational Fluid Dynamics (CFD)

Aircrafts (Boeing); spacecrafts (NASA, JPL Jet Propulsion Lab.)

Natural oil and gas exploration; earthquakes (geophysics)

MOPAC, MNDO (semi-empirical)

Gaussian, Turbomol, Molpro (ab initio)


SHELX (X-ray structure)