Awesome Fortran ¶
A curated list of awesome Fortran frameworks, libraries and software. Inspired by awesome-swift by @Wolg.
- Functional Fortran - Functional programming for modern Fortran.
Libraries for graphing, graphics, and GUIs
- DISLIN - a high-level graphing and user-interface library.
- f90gl - public domain implementation of the official NIST Fortran 90 bindings for OpenGL.
- F03GL - a Fortran 2003 interface to the OpenGL library, along with the GLU and GLUT toolkits.
- gtk-fortran - a cross-platform library to build Graphical User Interfaces (GUI) using GTK+. Very useful when combined with the Glade RAD tool.
- PGPLOT - cross-platform scientific graphing library.
- VTKFortran - Pure Fortran (2003+) library to write and read data conforming the VTK standard.
Libraries for calculating and other mathematical operations.
- BLAS - application programming interface standard for publishing libraries to perform basic linear algebra operations such as vector and matrix multiplication.
- CERNLIB - The CERN Program Library is a large collection of general purpose libraries and modules maintained and offered in both source and object code form on the CERN central computers
- EISPACK - a software library for numerical computation of eigenvalues and eigenvectors of matrices, written in FORTRAN
- FGSL - portable, object-based Fortran interface to the GNU scientific library
- IMSL - The IMSL Fortran Numerical Library is the standard for high performance computing commercial mathematics and statistics libraries
- Lis - a Library of Iterative Solvers for Linear Systems
- netCDF - a set of software libraries and self-describing, machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data.
- OpenBLAS - one of the fastest open source BLAS libraries available. Almost as fast as Intel MKL.
Libraries for JSON data manipulating with Fortran language.
Libraries for XML data manipulating with Fortran language.
Date and time manipulation¶
Libraries for date and time manipulation with Fortran language.
- datetime-fortran - A Fortran 2003 date and time manipulation library, modeled after Python's datetime library.
Libraries for testing codebases and generating test data.
- FRUIT - FORTRAN Unit Test Framework, written in FORTRAN 95
- Ftunit - Fortran unit testing framework by Arjen Markus
- pFUnit - Unit testing framework for Fortran with MPI extensions by developers from NASA and NGC TASC. Uses parallel codes and object-oriented design.
- Vegetables - For a healthier code base, eat your vegetables
Libraries for encoding and decoding data with Fortran language.
- BeFoR64 - Base64 encoding/decoding library for FoRtran poor men. A KISS library for base64 encoding/decoding for modern (2003+) Fortran projects.
Libraries for enabling codes portability.
- PENF - Pure Fortran (2003+) library for ensuring codes portability.
Libraries for parsing command-line and building user interfaces.
- FLAP - Fortran command Line Arguments Parser for poor men. A KISS library for building easily nice Command Line Interfaces (CLI) for modern (2003+) Fortran projects.
- options.f90 - Options & input processing for modern Fortran.
Compiling and building¶
Libraries for compiling and building Fortran projects.
- FoBiS - Fortran Building System for poor men. A KISS tool for automatic building modern Fortran projects.
Libraries for conditional-compilation, macros for code simplification, and inclusion of additional source files, templating systems.
- Blockit/PyF95++ - A fairly simple Python framework used to block parse your code (or any text file) into nested blocks. The BlockIt framework has already been used to create a templating capability for the Fortran 95/2003 language along with some language extensions.
- PreForM - Preprocessor for Fortran poor Men.
Libraries for building documentation.
- FORD - An automatic documentation generator for modern Fortran programs.
Computational Fluid Dynamics¶
Libraries for CFD computations
- OFF - Open source Finite volume Fluid dynamics code.
- Unoficial Image - docker image provided by @baekjoon
- Fortran Machine - An MVC web stack written in Fortran 90
Various resources, such as books, websites and articles, for improving your Fortran development skills and knowledge.
- The Fortran Company - A home page of FORTRAN programming language.
- Fortran Dev - Fortran development blog.
- Fortran WIKI - An open venue for discussing all aspects of the Fortran programming language and scientific computing.
- GNU FORTRAN Lesson 1 - Videos about the Fortran programming language.
Other Awesome Lists¶
Other amazingly awesome lists can be found in the awesome-awesomeness list.
Your contributions are always welcome! Please submit a pull request or create an issue to add a new framework, library or software to the list. Do not submit a project, which hasn't been updated in the past 6 months or is not awesome.