For a Fortran library for numerical scientific computing, the first results are fortran-lang/stdlib, reference-lapack/lapack and gonum/gonum (Gonum is a numerical computing library for Go, not Fortran, so it fills a similar role in a different language rather than being a Fortran library itself). xianyi/openblas and openmathlib/openblas round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
We curate open-source GitHub repositories matching “Fortran libraries for scientific and numerical computing”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.
This project is a community-driven standard library for the Fortran programming language, providing a comprehensive collection of algorithms, data structures, and system utilities. It is designed to extend the language's native capabilities, offering a unified toolkit for scientific computing, numerical analysis, and general-purpose programming. The library distinguishes itself through a modular architecture that utilizes generic interface dispatch and compile-time specialization to ensure high performance across various data types. It provides standardized abstractions for external numerical
fortran-lang/stdlib is the official Fortran standard library, providing core numerical routines such as linear algebra (BLAS/LAPACK), random number generation, and statistics, but it is still under development and does not yet include dedicated solvers for differential equations, optimization, FFT, or parallel computing support.
LAPACK is a comprehensive library of Fortran routines designed for high-performance numerical analysis and linear algebra. It serves as a foundational scientific computing framework, providing standardized procedures for solving systems of linear equations, eigenvalue problems, and least squares approximations. The library distinguishes itself through a hierarchical routine abstraction that organizes mathematical operations into distinct levels of complexity. It utilizes block-partitioned matrix algorithms and a column-major memory layout to optimize data locality and hardware efficiency. By
LAPACK is the standard Fortran library for linear algebra (BLAS/LAPACK), providing routines for solving linear equations, eigenvalue problems, and matrix factorizations, which fits the search for Fortran numerical computing libraries but only covers the linear algebra aspect of the required features.
Gonum is a numerical computing library for the Go programming language, providing a collection of packages for scientific computing, linear algebra, statistics, and optimization. It functions as a framework for performing complex numerical computations and solving systems of linear equations. The project includes a dedicated graph analysis framework for modeling network graphs and solving connectivity and pathfinding problems. It also provides a statistical analysis toolkit for computing descriptive and inferential statistics and estimating mixture entropy. The library's capability surface c
Gonum is a numerical computing library for Go, not Fortran, so it fills a similar role in a different language rather than being a Fortran library itself.
OpenBLAS is a high-performance library for basic linear algebra subprograms that provides optimized matrix and vector operations. It serves as a multi-architecture math backend and numerical computing framework designed to execute complex mathematical calculations and high-speed numerical analysis. The library functions as an optimized CPU math library that detects hardware at runtime to apply the most efficient operation kernels for the specific processor. It supports multiple CPU targets through a combination of optimized assembly and C implementations. The project covers high-performance
OpenBLAS is a high-performance C library for BLAS operations, not a Fortran library itself, and it only covers linear algebra—not differential equations, optimization, FFT, or the broader numerics you are looking for.
OpenBLAS is a high-performance implementation of the Basic Linear Algebra Subprograms standard designed for numerical computing and matrix operations. It serves as a hardware-accelerated numerical library and optimized math kernel library, providing a computational engine for large-scale matrix multiplication and vector operations. The library distinguishes itself through the use of hand-tuned assembly kernels and SIMD instruction mapping, such as AVX and SVE, to maximize floating-point performance on specific CPU architectures. It features a multi-threaded framework that manages parallel exe
OpenBLAS provides the foundational BLAS and LAPACK linear algebra routines used in Fortran scientific computing, but it is a focused low-level linear algebra library rather than a comprehensive Fortran numerical computing library covering differential equations, optimization, FFT, or statistics.
SciPy is a scientific computing library for Python that provides a comprehensive collection of mathematical algorithms and numerical tools for research and engineering. It functions as a high-performance numerical analysis framework, bridging high-level Python code with compiled C and Fortran routines to execute complex computations at hardware speeds. The library is built upon array-based data structures that utilize strided memory layouts to enable efficient data manipulation and slicing. By employing vectorized operation dispatch and linking to optimized hardware-specific linear algebra li
SciPy is a Python library that wraps compiled Fortran routines for numerical computing, but the visitor asked for Fortran libraries themselves, so it is not a Fortran-native tool—it provides similar numerical capabilities but in the wrong language ecosystem.
ArrayFire is a hardware-agnostic compute framework and JIT-compiled tensor engine designed for high-performance numerical computing. It serves as a GPU numerical computing library and parallel signal processing toolkit that abstracts hardware backends, allowing the same codebase to execute across various GPU architectures and CPUs. The project distinguishes itself through a JIT engine that uses expression compilation to fuse operations and minimize memory overhead. It employs a deferred execution graph to optimize computation chains and provides interoperability primitives to share data and e
ArrayFire is a high-performance GPU-accelerated numerical computing library that covers many requested features, but it is written in C++ with CUDA/OpenCL rather than Fortran, so it does not meet the language requirement.
xtensor is a C++ multidimensional array library for numerical computing that provides N-dimensional containers with an interface mirroring the NumPy API. It utilizes a lazy evaluation expression engine to defer numerical computations until assignment, which minimizes memory allocations and intermediate copies. The library features a foreign memory array adaptor that allows it to wrap external buffers, such as NumPy arrays, to perform numerical operations in-place without duplicating data. It further optimizes performance through lazy broadcasting and a system that manages the lifetime of temp
xtensor is a C++ multidimensional array library with NumPy-like interfaces, not a Fortran library, so it does not match this search for Fortran-based scientific computing tools.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| fortran-lang/stdlib | 1.3K | Fortran | MIT | |
| reference-lapack/lapack | 1.8K | Fortran | other | |
| gonum/gonum | 8.3K | Go | bsd-3-clause | |
| xianyi/openblas | 7.5K | C | BSD-3-Clause | |
| openmathlib/openblas | 7.5K | C | BSD-3-Clause | |
| scipy/scipy | 14.5K | Python | bsd-3-clause | |
| arrayfire/arrayfire | 4.9K | C++ | BSD-3-Clause | |
| xtensor-stack/xtensor | 3.7K | C++ | BSD-3-Clause |