The most convenient way to do the exercises might be on your own computer after installing a compiler. The main choices are listed below. gfortran is the most universal/popular, is completely free and can be used on Windows, MacOSX or Linux. For Windows, the silverfrost compiler seems to work well: this is free on your own computer, but on an ETH-owned machine it would be necessary to buy a license. Possibly the best compiler is the one by Intel, which works on Windows, MacOSX and Linux. ETH has a site license for it that employees can use, but unfortunately this isn't available for masters students. A drawback is that your computer must be networked so it can connect to the central ETH license server.
gfortran: Developed by the GNU, the free software foundation. See http://gcc.gnu.org/wiki/GFortran. Recent versions of Linux will have this on the installation disk. For MacosX, make sure you first install Xcode (up to Snow Leopard this is on the installation disk; from Lion it is an App that can be downloaded); and a convenient place to download is http://hpc.sourceforge.net. For Windows I recommend using gfortran inside the cygwin environment (www.cygwin.com)
silverfrost (for Windows): free for personal use, download from http://www.silverfrost.com/.
Intel Fortran Compiler: ETH employees (e.g. doctoral students) can download from ides.ethz.ch. Documentation here.
Useful editors that highlight Fortran syntax: emacs or xemacs (unix-based); for MacOSX: aquamacs (here)
1. A manual. A good one is the Intel Fortan Language Reference Manual.
3. General information and/or pages of links to relevant sites
4. Unix tutorials
|Fortran Topics||Numerical Topics||Download|
|1 (17.09)||History, basics, simple programs||Class1.pdf|
|2 (24.09)||More basics, interactive I/O, do loops, functions&subroutines||Finite differences||Class2.pdf|
|3 (01.10)||Modules, ascii file I/O, Array functions, assumed size arrays.||1-D diffusion equation||Class3.pdf|
|4 (08.10)||Precision, namelists, formatted I/O.||2-D diffusion equation.|
|5 (15.10)||Derived types. Binary I/O. Keyword&optional arguments. where, forall. Character string manipulation.||Streamfunction. Upwind advection. 2-D advection-diffusion.|
|6 (22.10)||Recursive functions.||Iterative & multigrid solvers. Jacobi & Gauss-Seidel iterations. Program 2D Poisson solver.||
|.. (29.10)||NO LECTURE|
|7 (05.11)||Pointers. Generic procedures, operators and overloading.||Convection (2-D, infinite-Pr).|
|8 (12.11)||Makefiles. Writing fast code (optimisation).||Finite (low) Prandtl number convection.|
|9 (19.11)||NO LECTURE|
|10 (26.11)||Parallel computing.|
|11 (03.12)||Libraries.||Implicit timestepping.|
|12 (10.12)||Review, Fortran 2003&2008 features, discussion|
|.. (17.12)||NO LECTURE|