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.
- Foundations & Standards
- Compilers
- Build Systems & Tooling
- Numerical & Scientific Libraries
- Parallelism & HPC
- Interoperability
- Testing, Debugging & Profiling
- Package Management
- Applications & Use Cases
- Learning Resources
- Related Awesome Lists
- Fortran Language Standard – Official ISO working group defining Fortran language standards.
- Fortran Wiki – Community-maintained documentation and examples for modern Fortran.
- Fortran-lang – Central hub for modern Fortran tooling, tutorials, and ecosystem news.
- ISO_C_BINDING – Standard module for C interoperability.
- Modern Fortran Explained – Definitive reference for modern Fortran features.
- GNU Fortran (gfortran) – Widely used open-source Fortran compiler.
- Intel oneAPI Fortran Compiler – Optimizing compiler for Intel CPUs and HPC workloads.
- LLVM Flang – Modern Fortran front-end for the LLVM ecosystem.
- NVHPC Fortran – NVIDIA Fortran compiler optimized for GPUs and accelerators.
- Cray Fortran – High-performance compiler used on Cray supercomputers.
- LFortran – Interactive and LLVM-based modern Fortran compiler.
- 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.
- 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.
- 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.
- Fortran–C Interoperability Guide – Practical guidance on mixing Fortran and C.
- f2py – Tool for connecting Fortran code with Python via NumPy.
- ISO_C_BINDING Examples – Practical examples of C interoperability.
- SWIG – Tool for generating bindings between Fortran, C, and higher-level languages.
- 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.
- fpm (Fortran Package Manager) – Official package manager for modern Fortran projects.
- Spack – HPC-oriented package manager supporting Fortran libraries.
- Conda-forge Fortran Packages – Community-maintained Fortran packages for Conda environments.
- Weather & Climate Modeling – Fortran-based models used in meteorology and climate science.
- Computational Fluid Dynamics (CFD) – Physics simulations leveraging Fortran numerical kernels.
- Quantum Chemistry Codes – Electronic structure and materials modeling software.
- Finite Element Analysis – Engineering simulations built on Fortran solvers.
- Astrophysics Simulations – Large-scale simulations for space and cosmology research.
- Fortran-lang Tutorials – Modern Fortran tutorials and examples.
- GNU Fortran Documentation – Official compiler and language reference.
- Learn Modern Fortran – Practical introduction to modern Fortran syntax.
- Modern Fortran Best Practices – Recommended patterns for maintainable Fortran code.
- HPC with Fortran – Training materials for Fortran in supercomputing.
- Numerical Recipes – Classic reference for numerical methods.
- 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.
- Awesome Scientific Computing
- Awesome HPC
- Awesome Numerical Computing
- Awesome Physics
- Awesome Data Science
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.