Awesome Fortran
A curated list of awesome Fortran frameworks, libraries and software.
Inspired by
awesome-swift by
@Wolg.
Functional Libraries
Graphics Libraries
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.
Math Libs
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
-
NAG Fortran Library
- Produced by experts for use in a variety of applications, the NAG
Fortran Library has a global reputation for its excellence and, with
hundreds of fully documented and tested routines, is the largest
collection of mathematical and statistical algorithms available
-
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.
JSON Manipulation
Libraries for JSON data manipulating with Fortran language.
XML Manipulation
Libraries for XML data manipulating with Fortran language.
-
fox - Fortran XML library
-
xml-fortran
- an all-Fortran solution for reading and writing XML files.
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.
Testing
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
Encoding-Decoding
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.
Portability enabling
Libraries for enabling codes portability.
-
PENF - Pure Fortran (2003+)
library for ensuring codes portability.
Command-Line parsing
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.
Preprocessor
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.
Automatic documentation
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.
Docker
Web
Resources
Various resources, such as books, websites and articles, for improving
your Fortran development skills and knowledge.
Fortran Websites
-
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.
Fortran Videos
Other Awesome Lists
Other amazingly awesome lists can be found in the
awesome-awesomeness
list.
Contributing
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.