Fortran 90/95/HPF Information File

Michael Metcalf

Manfred-von-Richthofen Straße 15

D-12101 Berlin, Germany

michael.metcalf@t-online.de

 

Last Issue

----------

 

I first began to compile this information in 1991, in answer to repeated requests on comp.lang.fortran for details of compilers and books on the, then, new Fortran 90. (At that time there was just one compiler, NAG’s, and two books, the Handbook and M&R.)

 

Given the easy availability today of this type of information on the Web, and the fact that we are on the threshold of the changeover to Fortran 2003, I consider it the right moment to call it a day, and to cease maintaining and distributing the file. It will, Walt Brainerd, willing, remain available on his Web site (and thanks to Walt for hosting this over the last several years).

 

Thanks, also, to all those who have kindly sent me information over the years. The level of mutual help in the Fortran community is one of its most striking and happy features.

 

                         Mike Metcalf

 

This is an information file on compilers, tools, books, courses, tutorials and the standard for the Fortran programming language and its derivatives. Additional information on Fortran products is available on the World Wide Web at the URLs http://www.fortran.com/, http://www.fortranlib.com/ and http://www.dmoz.org/Computers/Programming/Languages/Fortran/. An active discussion group can be joined by going to http://www.jiscmail.ac.uk/lists/comp-fortran-90.html.

 

This information is compiled on a ‘best-effort’ basis and is without prejudice. It may be freely copied and disseminated. Corrections and additions are solicited. Version of 7 September, 2004.

Where can I Obtain a Fortran 95 Compiler?

Absoft Fortran compilers, debuggers, and development tools for Windows, Macintosh, and Linux include source-compatible Fortran 95 compiler suites for Intel/AMD/Linux (32-bit and 64-bit), PPC/Linux, Macintosh OSX and Windows. These complete Fortran compiler suites, called Pro Fortran, include both F77 and F95 compilers plus complete a development environment with IDE, Fortran Editor, Absoft's C/C++ compiler, and the Fx/Fx2 Fortran debuggers. All Absoft Pro Fortran compiler suites provide full support for the native environment, include graphics, precompiled math libraries, VAX/Unix subroutine compatibility libraries, HDF libraries and free technical support. Software Cluster Kits, which include pre-configured MPICH, PVM, ScaLAPACK and PBS, are available for Linux systems. Auto-parallelizing (SMP) an auto-vectorizing preprocessor, an OpenMP pre-processor, and IMSL Numerical libraries are optional. Absoft also distributes IBM's high-performance XL Fortran compiler, v8.1, and IBM's XL C/C++ compiler, v6.0, for the G5/PowerMac running OSX: http://www.absoft.com/. The Fortran 95 Compiler for 32-bit Linux also comes with several features from Fortran 2003.

Compaq offers highly optimizing Fortran 95 compilers for the following platforms: Tru64 UNIX Alpha, OpenVMS Alpha, Windows 95/98/NT, and Linux Alpha. The Windows product, Compaq Visual Fortran, includes the Microsoft  Developer Studio IDE which can be shared with Microsoft Visual C++. Parallel execution using OpenMP-directed decomposition or HPF is included on the Tru64 UNIX platform. On Windows NT, SMP parallel execution using directed decomposition is available through Visual. Compaq Fortran for Linux Alpha Systems is available as a free download under a Technology Enthusiast license for non-commercial use. All Compaq Fortran 95 products include the Compaq Extended Math Library of optimized scientific subroutines and the allocatable array extensions. See: http://www.compaq.com/fortran or mail to fortran@compaq.com.

Cray has a fully optimizing Fortran 95 compiler available for the Cray PVP (J90, C90, T90, SV1), T3E, and X1 systems.  The PVP compiler supports automatic parallelization and OpenMP.  The T3E compiler supports Co-Array Fortran.  The X1 compiler supports automatic streaming, OpenMP, Co-Array Fortran, and several Fortran 2003 features. For more information on Co-Array Fortran see http://www.co-array.org/.

The Fortran Company offers F, the subset language, for Unix and Windows, some in highly optimizing versions. All of the full professional versions of the F compiler are available free by downloading them from the F anonymous ftp directory: ftp://ftp.swcp.com/pub/walt/F. See also www.fortran.com/F and the book section below.

Fujitsu has a Fortran 95 compiler for the SPARC Solaris platform including OpenMP 2.0 support. This SPARC Solaris compiler has been optimised for the Fujitsu PRIMEPOWER systems: http://www.fr.fse.fujitsu.com/devuk/solaris.shtml. Fujitsu also has a Fortran 95 compiler for Linux (see
http://www.fr.fse.fujitsu.com/devuk/linux.shtml), and a highly optimized, native Fortran 95 compiler, Fortran/VPP and HPF, for its VPP supercomputers. You receive more information through:
http://www.fr.fse.fujitsu.com/devuk/contacts.shtml.

The Gnu open-source G95 compiler at http://www.g95.org/ is becoming available.

Hewlett-Packard provides Fortran 95 compilers for the HP-UX operating system running on PA-RISC and Itanium2 architectures. Release v2.6 currently supports the Fortran 95 language and OpenMP v2.0. See
http://www.hp.com/go/hpfortran.

IBM's XL Fortran Enterprise Edition V9.1 for AIX is a standard-based compiler. XL Fortran fully supports OpenMP Fortran API V2.0 and is fully compliant with FORTRAN 77, Fortran 90, and Fortran 95 standards. It also provides partial support for the Fortran 2003 draft standard. XL Fortran supports both IBM and industry extensions as well. XL Fortran Enterprise Edition V9.1 for AIX is a highly optimizing, native Fortran compiler designed to exploit the IBM RS/6000 and eServer pSeries line of symmetric-multiprocessing (SMP) hardware. It exploits not only IBM PowerPC, POWER3, and POWER4 architectures, but also POWER5 – the latest hardware architecture. In addition, XL Fortran Enterprise Edition V9.1 for AIX adds new exploitation of IBM eServer BladeCenter JS20 with PowerPC 970 processor. For detailed information: http://www.ibm.com/software/awdtools/fortran.

 

Intel produces a Fortran 95 optimizing compiler for Windows NT/2000/98/95 and Linux that comes complete with its own debugger, module analyzer, and preprocessor. The compiler performs automatic vectorization, and takes full advantage of Intel’s MMX and SSE instruction extensions for the Pentium IV. It requires that Microsoft Visual C/C++ be installed (not on linux), and is capable of plugging into Visual Studio. ifort for linux is available gratis for non-commercial use. See http://www.intel.com/software/products/compilers/. A freely downloadable version is available.

 

Lahey/Fujitsu Fortran 95 is produced by the Lahey/Fujitsu alliance. LF95 is available in three Windows configurations: Express, Standard, and PRO, and two Linux configurations: Express and PRO. All configurations feature: VAX, IBM, and POSIX language extensions, allocatable array enhancements, etc. The Windows and Linux Express version is command line only and features the compiler, linker and debugger. PRO for Windows adds a Fortran-smart Windows editor, a debugger, an AUTOMAKE make utility, and an enhanced Winteracter Starter kit (WiSK) for creating true Windows programs with Fortran, and a Coverage Analysis Tool that detects unexecuted code and performs range of operation checking. The PRO is compatible with Visual C++, Visual Basic, and Delphi and also includes Fujitsu's SSL2 Math Library and Visual Analyzer (see below). The PRO Linux version offers auto-parallelization, OpenMP compatibility, thread-safe BLAS and LAPACK, WiSK, AUTOMAKE, and Fujitsu's SSL2. All products come with free technical support and are available at http://www.lahey.com. Also available is a subset compiler, elf90.

NAG provides a f95 compiler for most unix platforms (including Mac OS X and Linux on x86 and Alpha), also for VMS and Microsoft Windows. This was the first f9x compiler, in 1991. It supports the ISO extensions for floating-point exception handling and allocatable array enhancements and some F2003 extensions. The NAGWare f95 Tools (www.nag.co.uk/nagware/NQ.asp) perform F77 to f95 conversion. Contact infodesk@nag.com, infodesk@nag.co.uk, www.nag.co.uk, or www.nag.co.uk/nagware/NP/NP50_announcement.asp.

NA Software supplies Fortran 95 on PCs including Windows 95, NT and Linux/x86. It includes the ISO extensions for IEEE arithmetic and allocatable array enhancements, a native implementation of ISO_VARYING_STRING, and a built-in module providing OpenGL conformance. It also comes with a GUI-based source level debugger. A cheap student version accepts files up to 2000 lines. http://www.nasoftware.co.uk/home.html.

NEC has a native, optimizing Fortran 95 compiler, FORTRAN90/SX, with an automatic vectorization and parallelization capability, for its supercomputer SX series. HPF/SX V2 provides functions conforming to the specification of HPF1.1 and HPF2.0 and can be used with vector processing functions in SX Fortran and with parallel processing  functions using microtasking. (sx-4@sxsmd.ho.nec.co.jp).

PathScale is shipping a high performance Fortran95 compiler for Linux on the AMD64 (Opteron), EMT64 (Intel’s new 64-bit ia32 extension), and ia32 architectures. The 64-bit compiler is production-quality, and has the best performance of any compiler on the Opteron. The 32-bit compiler should enter beta-test in June, 2004. OpenMP support is planned by December 2004.  For more details, please see http://pathscale.com/products1.html.

Salford Software markets FTN95, a Fortran 95 compiler for Win32, running on Windows 95/NT/2000/XP PCs. It has announced its Fortran 95 compiler for Microsoft .NET (FTN95 for .NET). This compiler will produce fast executables from source files that may be any combination of Fortran 77, Fortran 90 and Fortran 95.  FTN95 for .NET, including integrated Help and Debugger, is supplied bundled with FTN95 for Win32 and, optionally, with Microsoft Visual Studio for .NET. A low-cost, fully-featured personal edition is also available: sales@salfordsoftware.co.uk or  http://www.silverfrost.com/27/ftn95/purchase_salford_compiler_products.asp.

SGI has the MIPSpro Fortran 95 compiler (which now uses the Cray CF90 front end) available for all SGI IRIX systems.  It can be configured with an optional Auto Parallelizing Option (APO) product to do automatic parallelization of Fortran code. It supports OpenMP. See http://www.sgi.com/software/irix/tools/fortran.html.

Sun has a new release of a Fortran 95 compliant compiler as part of Sun Studio 8 for Solaris on SPARC® processors. It contains command-line tools including Fortran 95, C and C++ compilers, an application building utility, debugger, and the Sun Performance Library, along with a complete Integrated Development Environment (IDE) with GUI debugger, performance tools, along with other components.  Fortran 95 has Interval Arithmetic and is OpenMP and MPI compliant. Improvements include support for the upcoming Fortran 2003 standard with support for DECIMAL, IOMSG, ROUND, and IEEE. Global program checking (GPC) has been extended to perform static verification of OpenMP directives. The software can be downloaded and evaluated for free for 60 days. For complete product information see http://wwws.sun.com/software/sundev/index.html. Additional technical information and documentation is available at http://developer.sun.com/prodtech/cc/.

 

What Books Are Available?

 

English books on Fortran 2003:

 

Fortran 95/2003 Explained, Metcalf M., Reid J. and Cohen M., published in June 2004 (August in the US) by Oxford University Press, is available in both paperback (ISBN 0-19-852693-8, £23.95/$49.50) and hardback (ISBN 0-19-852692-X, £65/$124.50). For more information and ordering details, please visit the Oxford University Press websites: http://www.oup.co.uk/ or http://www.oup.com/, or toll free 1-800-451-7556, or the usual on-line suppliers.

English books on Fortran 95:

Compaq Visual Fortran: A Guide to Creating Windows Applications  - Norman Lawrence, Digital Press (an imprint of Butterworth-Heinemann), 2001, ISBN 1-55558-249-4.

Fortran 90/95 Explained (second edition) - Metcalf and Reid, Oxford University Press, 1999, ISBN 0-19-850558-2, about $33. This book is a complete, audited description of the Fortran 90 and Fortran 95 languages in a more readable style than the standards themselves. It incorporates all J3 and WG5’s interpretations and has chapters on the floating-point exception handling and the data type enhancement of the official ISO extensions.  It has six Appendices, including an extended example program that is available by ftp and solutions to exercises, as well as an Index.  For US orders: http://www.oup-usa.org/ or toll free 1-800-451-7556; in the UK: www.oup.co.uk. An electronic version is available at http://www.books24x7.com/.

Fortran 90/95 for Scientists and Engineers, 2nd ed., - McGraw Hill, S. J. Chapman, 2004, ISBN 0-07-282575-8.

 

Fortran 95 - Counihan, UCL, 1997, 185728367-8.

 

Fortran 95 Handbook - Adams, Brainerd, Martin, Smith and Wagener, MIT, 1997, ISBN 0-262-51096-0.

 

Fortran 95 Language Guide - Gehrke, Springer, London, 1996, ISBN 3-540-76062-8.               

 

Fortran Top 95--Ninety-Five Key Features of Fortran 95, Adams, Brainerd, Martin, and Smith. $10 in PDF form (only) from the Fortran Store (http://www.fortran.com/).

Introducing Fortran 95 – Chivers and Sleightholme , Springer Verlag, London.

 

Introduction to Fortran 90/95 - Chapman, McGraw-Hill, 1997, ISBN 0-07-011969-4.

 

Introduction to Fortran 90/95, Algorithms, and Structured Programming, Part 1: Introduction to Fortran 90, Part 2: Algorithms and Fortran 90.  R. Vowels: 93 Park Drive, Parkville 3052, Victoria, Australia, (robin_v@bigpond.com). $43 Aust with disk, ISBN 0-9596384-8-2.

Object Oriented Programming via Fortran 90/95 - Ed Akin, Cambridge University Press, 2003, ISBN 0-521-52408-3.

Programming in Fortran 90/95 -- Morgan & Schonfelder, available in Acrobat PDF format from http://www.fortran.com/ or http://www.nasoftware.co.uk/.

The DIGITAL Visual Fortran Programmer’s Guide, ISBN 1-55558-218-4, April 1999.

English books on Fortran 90:

Fortran 90 - Meissner, PWS Kent, Boston, 1995, ISBN 0-534-93372-6.

 

Fortran 90 - Huddleston, Exchange Publ. Div., Buffalo, NY, 1996, ISBN 0-945261-07-1.

 

Fortran 90 and Engineering Computation - Schick and Silverman, John Wiley, 1994, ISBN 0-471-58512-2.

 

Fortran 90 Concise Reference - Wagener, Absoft, 1998, ISBN 0-9670066-0-0.

 

Fortran 90 for Engineers - Etter, Benjamin/Cummings, Redwood City, 1995, ISBN 0-201544-46-6.

 

Fortran 90 for Engineers and Scientists - Nyhoff and Leestma, Prentice Hall, 1996, ISBN 0-13-519729-5.

An “Introduction to....” also exists: 1996, ISBN 0-13-505215-7.

 

Fortran 90 for Scientists and Engineers - Brian D. Hahn, Edward Arnold, 1994, ISBN 0-340-60034-9.

Fortran 90 Programming - Ellis, Philips, Lahey, Addison Wesley, Wokingham, 1994, ISBN 0-201-54446-6.

Problem solving with Fortran 90: for scientists and engineers - Brooks, 1997, Springer, 0-387-98229-9.

Programmer’s Guide to Fortran 90, third edition - Brainerd, Goldberg and Adams, Springer, 1996, ISBN 0-387-94570-9.

Programming in Fortran 90 - I.M. Smith, Wiley, ISBN 0471-94185-9.

 

Upgrading to Fortran 90 - Redwine, Springer-Verlag, New York, 1995, ISBN 0-387-97995-6.

English books on subset languages:

Algorithms and Data Structures in F and Fortran - Vowels, Unicomp, 1998, ISBN 0-9640135-4-1. Order from http://www.fortran.com/.

 

essential Fortran 90 and 95 - Meissner, Unicomp, 1997, ISBN 0-9640135-3-3.

 

Key Features of F - Adams, Brainerd, Martin and Smith, 1996, ISBN 0-9640135-2-5, Unicomp.

 

Programmer’s Guide to F - Brainerd, Goldberg and Adams, 1996, ISBN 0-9640135-1-7, Unicomp.

 

The F Language Guide - Gehrke, Springer, London, 1997, ISBN 3-540-7615-9.

 

The F Programming Language - Metcalf and Reid, Oxford University Press, 1996, ISBN 0-19-850026-2, about $33. This book is the definitive description of the F programming language - a carefully crafted subset of Fortran 90 that is highly regular and stripped of Fortran’s older, dangerous features, but retains the powerful array language, data abstraction and pointers. It has six Appendices, including an extended example program that is available by ftp and solutions to exercises, as well as an Index. US orders: http://www.oup-usa.org/ or toll free 1-800-451-7556; UK: http://www.oup.co.uk/.

English books on related topics:

 

Advanced Scientific Computing - Wille, Wiley, 1995, ISBN 0471-95383-0.

 

Atlas for Computing Mathematical Functions ... in Fortran 90 and Mathematica - Thompson, Wiley, 1997, 0-471-18171-4.

Contemporary Computing for Technical Engineers and Scientists: using Fortran 90 and spreadsheets - Forsythe, PWS, 1997, 0-534-93139-1.

Numerical Recipes in Fortran 90: The Art of Parallel Scientific Computing, Volume 2 of Fortran Numerical Recipes - Press, Teukolsky, Vetterling and Flannery, Cambridge U. Press, ISBN 0-521-57439-0, 1996.  Code can be downloaded (purchased) from http://www.nr.com/. A CDROM is also available (see Web site).

Chinese:

Programming Language Fortran 90 - He Xingui, Xu Zuyuan, Wu Qingbao and Chen Mingyuan, China Railway Publishing House, Beijing, ISBN 7-113-01788-6/TP.187, 1994.

Fortran 90 - Walter S. Brainerd, Charles H. Goldberg, Jeanne C. Adams, CHEP, Beijing, and Springer, Berlin, 2000, ISBN 7-04-007937-2 (a translation of Programmer's Guide to Fortran 90).

Dutch:

Fortran 90 - W.S. Brainerd, Ch.H. Goldberg, and J.C. Adams, translated by J.M. den Haan, Academic Service, 1991, ISBN 90 6233 722 8.

Finnish:

Fortran 90/95 - Juha Haataja, Jussi Rahola and Juha Ruokolainen. Center for Scientific Computing (Finland), 2001, 339 pages, 3rd edition, ISBN 952-9821-60-3. WWW version: http://www.csc.fi/oppaat/f95/

French:

Fortran 90; Approche par la Pratique - P. Lignelet, Série Informatique Éditions, Menton, 1993, ISBN 2-909615-01-4.

Fortran 90.  Les concepts fondamentaux, the translation of « Fortran 90 Explained » M. Metcalf, J. Reid, translated by M. Caillat and B. Pichon, AFNOR, 1993, Paris, ISBN 2-12-486513-7.

Fortran 90; Initiation à partir du Fortran 77 - Aberti, Série Informatique Éditions, Menton, 1992, ISBN

2-909615-00-6.

Les spécificités du Fortran 90, M. Dubesset et J. Vignes, Éditions Technip, 1993. ISBN 2-7108-0652-5.

Manuel complet du langage Fortran 90, et guide d’application, P. Lignelet, Série Informatique Éditions, 1995. ISBN 2-909615-02-2.

Manuel Complet du Langage Fortran 90 et Fortran 95, Calcul intensif et Génie Logiciel, P. Lignelet, Masson Éditions, Paris, 1996, ISBN 2-225-85229-4.

Programmer en Fortran 90, C. Delannoy, Eyrolles, 1992,  ISBN 2-212-08723-3.

Traitement des données numériques avec Fortran 90, M. Olagnon,  Masson Éditions, 1996, ISBN

2-225-85259-6.

Structures des données (et leurs algorithmes) en Fortran 90/95,  P. Lignelet, Masson Éditions, Paris, ISBN 2-225-85373-8.

German:

Fortran 90 Lehrbuch – D. Rabenstein, Hanser, 1995, ISBN 3-446-18235-7.

Die Programmiersprache F – W. Gehrke, Springer-Verlag, ISBN 3-540-63376-6.

 

Fortran 90 - B.Wojcieszynski and R.Wojcieszynski, Addison-Wesley, 1993, ISBN 3-89319-600-5.

 

Fortran 90: eine informelle Einführung – M. Heisterkamp, BI-Wissenschaftsverlag, 1991, ISBN 3-411-15321-0.

 

Fortran 90 Kurs: technisch orientiert - G. Schmitt, Oldenbourg, 1996, ISBN 3-486-23896-5

 

Fortran 90, Lehr- und Arbeitsbuch für das erfolgreiche Programmieren - W.S. Brainerd, C.H. Goldberg, and J.C. Adams, translated by Peter Thomas and Klaus G. Paul, R. Olbenbourg Verlag, Muenchen, 1994, ISBN 3-486-22102-7.

Fortran 90 Lehr- und Handbuch - T. Michel, BI-Wissenschaftsverlag, 1994.

Fortran 90 Referenz-Handbuch: der neue Fortran-Standard – W. Gehrke, Carl Hansen Verlag, 1991, ISBN3-446-16321-2.

Programmierung in Fortran 90 - Schobert, Oldenburg, 1991.

Programmierung mit Fortran 90 - Bäumer, Vieweg, Braunschweig, 1997, ISBN 3-528-05208-2.

Programmieren in Fortran - Erasmus Langer, Springer-Verlag, Wien  New York, 1993. ISBN 3-211-82446-4, 0-387-82446-4.

Software Entwicklung in Fortran 90 - Überhuber and Meditz, Springer Verlag, 1993, ISBN 0-387-82450-2.

Italian:

Some resources in Italian, including a manual, are at http://space.tin.it/computer/gciabu.

Japanese:

Fortran 90 Explained - Metcalf and Reid, translated by H. Nisimura, H. Wada, K. Nishimura, M. Takata, Kyoritsu Shuppan Co., Ltd., 1993, ISSN 0385-6984.

Russian:

An Explanation of the Fortran 90 Programming Language (translation of Fortran 90 Explained - Metcalf and Reid), translated P. Gorbounov, Mir, Moscow, 1995, ISBN 5-03-001426-8. Available also from Petr.Gorbounov@cern.ch.

FORTRAN 77 to Fortran 90 Tutorial - Einarsson and Shokin, Russian Academy of Sciences, Novosibirsk, 1995, ISBN 5-85826-013-6.

Swedish:

Fortran 90 - en introduktion - Blom, Studentlitteratur, Lund, 1994, ISBN 91-44-47881-X.

 

Other Useful Products

Apogee’s f90 compiler is highly optimized for SPARC architectures (sales@apogee.com or http://www.apogee.com/.

PGI has a Fortran 90/HPF compiler for SGI, IBM SP2, HP/Convex, and Sun Ultra, as well as a native F90/HPF compiler for Intel-based Linux/Solaris86/NT workstations and servers.  The latter supports auto-parallelization, native OpenMP parallelization, and HPF parallelization (sales@pgroup.com or http://www.pgroup.com/).

MTASK, a high performance library for parallel computing with CVF and other compilers is available free from http://www.equation.com/ (from the “Fortran Supercomputing” menu select Download-Library).  A manual at: ftp://ftp.equation.com/mtask/document/mtask.pdf.

A Fortran-aware debugger is TotalView from Etnus, http://www.etnus.com/.

A fairly simple point and click style editor called jedit (java editor) which has a Fortran support package is available at http://www.jedit.org/.

SofTek Systems, Inc. is a provider of a wide variety of HPF compilers, tools, and technical expertise. See either info@softek.co.jp or http://www.softek.co.jp. Tel: 81-3-3412-6008, fax: 81-3-3412-7990.

Crescent Bay Software supplies VAST/77to90, an advanced Fortran 77 to Fortran 90 converter. Products for auto-vectorization, auto-parallelization and graphical profiling/tuning are also available. See http://www.crescentbaysoftware.com/.

Intel's VTune Performance Analyzer increases software performance by quickly analyzing all the files running on a CPU, including drivers, the kernel, and the application, graphically showing what's spending the most time in the CPU, and allowing one to “drill down” through processes, threads, functions, etc. to the source files, identifying the bottlenecks in the code: http://www.intel.com/software/products/vtune/vtune60/.

DMS Reengineering Toolkit is used for automated analyses and changes to large software systems. This toolkit can parse large systems of F77/F90/F95 and produce compiler-like abstract syntax trees, etc. (http://www.semidesigns.com/Products/DMS/DMSToolkit.html).

Fujitsu Visual Analyzer (http://www.lahey.com/). Visually analyze the call structure and logic flow of your Fortran and C source code. Display a detailed cross-reference of all the variables in the program and where modules and commons are defined and referenced. Show C global variable definitions and references as well. VA can help you understand someone else’s code, detect subtle programming errors across multiple files, and verify compliance with the Fortran 95 standard.

FORCHECK is a static analyser for Fortran programs. It analyses both the individual program units and the whole program. It optionally verifies the syntax for conformance to the Fortran 90 standard, and provides warnings on undefined and unreferenced syntax items, inconsistent argument lists, and much more. FORCHECK generates documentation, such as cross-reference tables. See http://www.forcheck.nl/.

FORESYS (FORtran Engineering SYStem) is an integrated set of tools designed for engineers in charge of developing, maintaining and upgrading programs written in Fortran. It is suited for, among other things, migrating applications from Fortran 77 to Fortran 90. See Simulog below.

Fortran90-lint, for Fortran 90 program analysis, also other tools, is available from http://www.cleanscape.net/products/downloads/ftpflint.html.

 

FCAT, a coverage analysis tool for F90/95 code, written in Perl, is at http://www.dl.ac.uk/TCSC/UKHEC/FCAT/index.html.

Spackman & Hendrickson, Inc. supply SHAPE95, a comprehensive set of Fortran 95 compiler conformance tests. There are over 7500 individual, executable, self-checking, test subroutines. Each subroutine tests a particular aspect of compiler conformance to the Fortran 95 standard. The test suite is platform and OS independent and is bootstrapable from a Fortran 90 compiler. Installation and training are also available. For more information contact Dick Hendrickson, dick.hendrickson@att.net (612) 378-9694.

Bradly Associates supplies the GINO and GINOMENU range of GUI and graphics libraries for Win32, Unix and OpenVMS with an F90 binding.  More information at http://http://www.bradassoc.co.uk/.

SansGUI, a modeling and simulation environment for incorporating a graphical schematic model editor, graphical user interface, dynamic charting, and animated OpenGL 3D graphics programming, all without the need to write any GUI code, supports Compaq Visual Fortran on Windows platforms. For product information, visit http://www.protodesign-inc.com/sansgui.htm.

 

MATFOR is a set of numerical and graphical libraries for Fortran programmers in scientific and engineering fields (http://www.ancad.com)/.

A 2- and 3-D OpenGL graphics interface, f90gl, for Unix and Windows 95/NT, is obtainable at http://math.nist.gov/f90gl. Latest version is 1.2. A version compatible with Lahey/Fujitsu Fortran 95 (LF95) and Lahey Fortran 90 (LF90) is available at www.lahey.com/support/SetupF90gl.exe.

I.S.S. supplies Winteracter, a Fortran 9x GUI toolkit, providing source-level compatibility between Win32 and Linux. See http://www.winteracter.com/.

HPF is available not only as listed above, but also on the definitive list of sites to be found at http://www.ac.upc.es/HPFSurvey. See also http://www.crpc.rice.edu/HPFF.

A source form converter, convert.f90, is obtainable by ftp from ftp://ftp.numerical.rl.ac.uk/ in the directory /pub/MandR. Latest version is 1.5.

Another source form converter is Alan Miller’s to_f90.f90 at http://users.bigpond.net.au/amiller/.

Layne T. Watson has sed and perl scripts in a package to correct obsolete and unsupported FORTRAN constructs for use with standard Fortran 90: http://people.cs.vt.edu/~ltw/f77tof90/. FOR_STRUCT and FOR_STUDY from Cobalt Blue: http://www.cobalt-blue.com/product.htm are also useful tools.


EZUP is a partial F77 to Elf90 converter, for Windows: http://pauli.nmsu.edu/~amiller/ezup.html.

A free set of wrapper routines to call a subset of Xlib routines from Fortran 90 is available from Garnatz and Grovender, Inc.: gginc@winternet.com, http://www.winternet.com/~gginc/, or ftp.winternet.com/users/gginc.

NAG (see above) and IMSL (now Visual Numerics, mktg@houston.vni.com) offer f90 versions of their maths libraries that take full advantage of the language’s library building capabilities.

An f90 mode is included in the official Emacs distribution (GNU Emacs-19.28/XEmacs-19.13 or later).

For make files, a perl5 script, which behaves like an X11 makedepend program (it edits an existing Makefile) and recursively searches include files for more dependencies, is available from Kate Hedstrom: ftp://ahab.rutgers.edu/pub/perl/sfmakedepend,

For a makemake perl script: http://www.fortran.com/fortran/makemake.html.

Another f90-aware Makefile maker written in perl is available at http://www.gfdl.gov/~vb/mkmf.html.

Yet another makedepf90 program is available (free) at http://www.helsinki.fi/~eedelman/makedepf90.html.

Polyhedron Software’s plusFORT Version 6.0 has comprehensive facilities for translation of Fortran 77 and VAX Fortran to Fortran 90.  A new Windows front-end is available for the NT version. A major feature is AUTOMAKE, which automatically detects Fortran 90 module dependencies. See sue@polyhedron.com; http://www.polyhedron.com/.

A F90 source for a f90split utility is at ftp://ftp.ifremer.fr/ifremer/ditigo/fortran90/f90split.f90.gz.  See also http://www.ifremer.fr/ditigo/molagnon/fortran90/ and ftp://ftp.ifremer.fr/ifremer/ditigo/fortran90/moware-1.0.tar.gz to get an F90 to PostScript list program and an F90 aware pre-processor similar to cpp, but with pretty printing for the pre-processed code.

A C2F.ZIP file is available at http://home.cfl.rr.com/davegemini/C2F.ZIP. It contains C2F.EXE, a C-to-F90 “hands-off” translator program for Win95/NT.

 

Some coding and style guidelines have been developed by the European meteorologists: www.meto.gov.uk/research/nwp/numerical/fortran90/f90_standards.html.

f90SQL offers a convenient and familiar way to read and write data directly from your Fortran programs to many applications formats.  See information about the library at http://www.canaimasoft.com/f90sql.

HicEst is a small programming tool with integrated editor, incremental compiler, interpreter and debugger designed for immediate results during development of technical or scientific applications. It can also be used as a Windows GUI wrapper to call existing code in a DLL. See http://www.hicest.com/.

A Fortran90/95 command line and string library for GNU getopt_long() functionality (long command line options) is freely available from Charlie Zender at http://dust.ess.uci.edu/f/sng.tar.gz.

Where Can I Obtain Courses, Course Material or Consultancy?

Copyright but freely available course material is available on the World Wide Web from the URLs:

 

Drew McCormack has a course on f90 for f77 programmers at http://www.maniacalextent.com/publications/. It is broken into 3 days: 1) Basic intro to f90; 2) Structured programming with f90, using modules and user-defined types to create Abstract Data Types (ADTs); 3) Parallel programming with MPI and OpenMP. The course was written for Chemical Physicists, but a general scientist could follow them.

Paul Dubois’s lecture notes and class materials on “Object Based  Programming in Fortran 90” at http://prdownloads.sourceforge.net/pyfortran/OBF90.zip.  (In WinZip, on the Options|Configuration menu, turn off “tar smart convert CR/LF”.)

Manchester Computer Centre: http://www.hpctec.mcc.ac.uk/hpctec/courses/Fortran90/F90course.html or via ftp: ftp.mcc.ac.uk, in the directory /pub/mantec/Fortran90.

U. of Liverpool: http://www.liv.ac.uk/HPC/HPCpage.html - covers f90 and HPF, with Java-enhanced Web pages.

CERN: http://wwwinfo.cern.ch/asdoc/f90.html.

In French: Support de cours Fortran 90 IDRIS - Corde & Delouis (from www.idris.fr/data/cours/lang/fortran/choix_doc.html).

 

U. of Edinburgh (on HPF): http://www.epcc.ed.ac.uk/epcc-tec/course-packages/HPF-Package-form.html.

Linkoping U.: http://www.nsc.liu.se/f77to90.html.

 

Courses and conversion consultancy are available from:

Walt Brainerd, a former member of J3, also on HPF.

Tom Lahey (sales@lahey.com).

 

Crescent Bay Software (see above).

PTR Associates, based in Wokingham, UK, offers a Fortran 95 course: http://www.ptr.co.uk/fortran-programming.html.

Michael Metcalf, formerly of CERN, Switzerland, and an ex-member of J3 and WG5, offers a Fortran 95 course that lasts for six 75-minute sessions. There is an F version too. He is happy to negotiate holding either version anywhere in the world. These courses are suitable for graduates, or equivalent level, and are a useful way to ‘kick-start’ a Fortran 90/95 or an F activity at a given site. Contact at michael.metcalf@t-online.de, or Manfred-von-Richthofen Straße 15, 12101 Berlin, Germany, +0049.30.78952573.

John Reid, formerly of J3 and a member of WG5, offers a Fortran 90 course. He is happy to negotiate holding it anywhere in the world.  It is suitable for graduates, or equivalent level, and is a useful way to ‘kick-start’ a Fortran 90 activity at a given site. Contact J.Reid@rl.ac.uk.

Purple Sage Computing Solutions, Inc. is offering three Workshops to Fortran programmers: The Fortran Modernization, Optimization and Parallelization Workshop; The Parallelization for Fortran Programmers Workshop; and The fthreads Workshop. Contact danlnagle@me.com. Also on offer is a one day workshop on the new features of Fortran 2000. See http://users.erols.com/dnagle/wsf2000.html for more details.

Cranfield University (Shrivenham Campus) offers a 5-day course “Scientific Programming with Fortran 95”, and by arrangement, a 3-day course “Fortran 90 for Fortran 77 Programmers”. Courses can also be arranged on demand and tailored to requirements. See http://www.rmcs.cranfield.ac.uk/amorg and follow link to AMORG Short Courses.

 

Simulog, attn. Mr. E. Plestan,

1 rue James Joule, F-78286 Guyancourt Cedex, France

Tel: +33 1 30 12 27 80   fax: +33 1 30 12 27 27

info@simulog.fr, http://www.simulog.fr/iforef.htm

 

A Japanese company offering courses and conversion consultancy is SofTek Systems, Inc. (see above).

Where Can I Find the Fortran and HPF Standards?

The Fortran 95 standard document is available from ISO, and replaces Fortran 90. The document reference number is ISO/IEC 1539-1:1997. See http://www.iso.ch, or contact

ISO Publications, 1 rue de Varembe, Case postale 56

CH-1211 Geneva 20, Switzerland

Fax. + 41 22 734 10 79

 

It may also be obtained from national member bodies such as

ANSI, 1430 Broadway, New York, N.Y. 10018

 

in particular at its documentation store:

 

     http://webstore.ansi.org/ansidocstore/find.asp?

 

The HPF 2.0 document is available as ftp://softlib.rice.edu/pub/HPF/hpf-v20.ps.gz.