Skip to content

brandonhimpfen/awesome-fortran

Repository files navigation

Awesome Fortran Awesome Lists

GitHub Sponsors   Ko-Fi   PayPal   Stripe   X   Facebook

A curated list of compilers, libraries, tools, standards, numerical frameworks, and learning resources for Fortran, with a focus on scientific computing, high-performance computing (HPC), and numerical analysis.

Contents

Foundations & Standards

Compilers

Build Systems & Tooling

  • CMake Fortran Support – Build system support for Fortran projects.
  • Make – Traditional build automation tool commonly used with Fortran.
  • Meson – Modern build system with Fortran support.
  • FORD – Automatic documentation generator for Fortran code.
  • fprettify – Code formatter for modern Fortran.

Numerical & Scientific Libraries

  • BLAS – Basic linear algebra subprograms foundational to numerical computing.
  • LAPACK – Library for solving linear algebra problems.
  • ScaLAPACK – Distributed-memory linear algebra library.
  • FFTW – Fast Fourier Transform library with Fortran bindings.
  • ARPACK – Eigenvalue solver for large sparse systems.
  • NetCDF-Fortran – Data format and library for array-oriented scientific data.

Parallelism & HPC

  • MPI – Message Passing Interface standard for distributed-memory parallelism.
  • OpenMP – Shared-memory parallel programming model supported by Fortran.
  • Coarray Fortran – Native Fortran parallel programming feature.
  • OpenACC – Directive-based GPU and accelerator programming model.
  • Kokkos Kernels – Performance-portable numerical kernels interoperable with Fortran.

Interoperability

Testing, Debugging & Profiling

  • pFUnit – Unit testing framework for Fortran.
  • CTest – Testing tool commonly used with CMake-based Fortran projects.
  • GDB – Debugger with Fortran language support.
  • Valgrind – Memory debugging and profiling tool.
  • Intel VTune – Performance profiling for HPC applications.

Package Management

Applications & Use Cases

Learning Resources

Tutorials

Guides

Courses

  • Scientific Computing with Fortran – Numerical programming using modern Fortran.
  • High-Performance Computing – Parallel computing concepts using Fortran and MPI.
  • Computational Physics – Simulation-focused course leveraging Fortran.

Related Awesome Lists

Contribute

Contributions are welcome. Please ensure your submission fully follows the requirements outlined in CONTRIBUTING.md, including formatting, scope alignment, and category placement.

Pull requests that do not adhere to the contribution guidelines may be closed.

License

CC0

About

A curated list of compilers, libraries, tools, standards, numerical frameworks, and learning resources for Fortran.

Topics

Resources

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages