Software:List of Fortran software and tools
From HandWiki
Short description: Fortran software and development tools
This is a list of software and programming tools for the Fortran programming language, including IDEs, compilers, libraries, debugging tools, numerical and scientific computing tools, and related projects.
Fortran compilers
- Absoft Pro Fortran — Absoft Pro Fortran is discontinued and ran on Linux and macOS
- AOCC — from AMD
- Classic Flang — part of the LLVM Project
- LLVM Flang — part of the LLVM Project
- Fortran 77 — Fortran 77 was developed by Digital Equipment Corporation, it is discontinued.
- G95 – portable open-source Fortran 95 compiler
- GCC (GNU Fortran)
- PGI compilers – NVIDIA developed compilers after aquiring The Portland Group
- IBM XL Fortran — IBM XL Fortran is current and runs on Linux (Power/AIX) and integrates with Eclipse
- Intel Fortran Compiler – part of Intel OneAPI HPC toolkit
- LFortran — LFortran is current, cross-platform, and has IDE support.
- MinGW – cross compiler and forked into Mingw-w64
- Open64 — Open64 is an open-source compiler that has been terminated and ran on Linux
- Open Watcom — Open Watcom is current, runs on DOS and OS/2, and has IDE support.
- Oracle Fortran — Oracle Fortran is discontinued, ran on Linux and Solaris.
- ROSE — source-to-source compiler framework developed at Lawrence Livermore National Laboratory
- Silverfrost FTN95 — FTN95 from Silverfrost is current, runs on Windows, and has IDE support.[1]
Integrated development environments (IDEs) and editors
- Software:Code::Blocks — supports Fortran with plugins[2]
- Eclipse IDE — with Fortran support via Photran[3]
- Geany — lightweight cross-platform IDE based on GTK
- IntelliJ IDEA — cross-platform IDE by JetBrains with Fortran pluggin[4]
- KDevelop — KDE-based IDE
- NetBeans — Apache software foundation IDE with Fortran configuration[5]
- OpenWatcom — IDE and compiler suite for C, C++, and Fortran
- Simply Fortran — standalone Fortran IDE for Windows, Linux, and macOS
- Visual Studio — with Intel Fortran integration
- Visual Studio Code — supports Fortran via extensions[6]
Mathematical libraries
- ARPACK
- Automatically Tuned Linear Algebra Software
- BLAS
- BLIS
- EISPACK
- Harwell Subroutine Library
- IMSL Numerical Libraries
- LAPACK
- Librsb
- LINPACK
- Lis
- Math Kernel Library
- MINPACK
- NAG Fortran Library
- Netlib
- PETSc
- pFUnit
- QUADPACK
- SLATEC
- SLICOT
- SOFA[7]
Scientific libraries
- ABINIT — software suite to calculate optical, mechanical, vibrational, and other observable properties of materials
- Cantera — chemical kinetics, thermodynamics, and transport tool suite
- CERN Program Library — collection of Fortran libraries for physics applications from CERN
- CP2K — quantum chemistry and solid-state physics software package for atomistic simulations
- Dalton — molecular electronic structure program
- Kinetic PreProcessor – open-source software tool used in atmospheric chemistry
- MESA — Modules for Experiments in Stellar Astrophysics
- Nek5000 — MPI parallel higher-order spectral element CFD solver
- NWChem — open-source high-performance computational chemistry software
- Octopus — real-space Time-Dependent Density Functional Theory code
- MODTRAN – model atmospheric propagation of electromagnetic radiation
- MOLCAS — quantum chemistry software package for multiconfigurational electronic structure calculations
- NOVAS – software library for astrometry-related numerical computations
- Physics Analysis Workstation – data analysis and graphical presentation in high-energy physics
- Quantum ESPRESSO — integrated suite for electronic-structure calculations and materials modeling
- siesta — first-principles materials simulation code using density functional theory
- Tinker — software tools for molecular design[8]
Debugging and performance tools
- GDB — GNU Debugger with Fortran support
- Valgrind — memory debugging and profiling tool
- VTune Profiler — performance analysis tool
- Allinea Forge — debugger and profiler for HPC applications[9]
Build and package management
- Autotools — build system supporting Fortran projects
- CMake — cross-platform build system supporting Fortran
- Make — build automation tool
- Spack — package manager for HPC software including Fortran libraries[10]
Machine learning and AI libraries
- Athena[11]
- Fiats (Functional Inference And Training for Surrogates)[12]
- FNN (Fortran Neural Network)[13]
- FortNN[14]
- Fortran-TF-lib (Fortran interface to TensorFlow)[15]
- FTorch (Fortran interface to PyTorch)[16]
- MlFortran[17]
- RoseNNa[18]
Parallel and high-performance computing tools
- MPI Fortran bindings — standard interface for distributed-memory parallelism
- OpenMP — shared-memory parallel programming support through compiler directives[19]
- Coarray Fortran — parallel programming model introduced in Fortran 2008[20]
- ScaLAPACK — parallel linear algebra package built on top of LAPACK[21]
Testing frameworks
- FUnit — open-source unit testing framework developed at NASA’s Langley Research Center, for Fortran 90, 95, and 2003.[22]
- pFUnit — unit testing framework for Fortran, modeled after JUnit
Documentation and code analysis tools
- FORD — automatic documentation generator for modern Fortran projects
- SQuORE — software quality and management platform with code analysis support[23]
- Understand — static analysis and code comprehension tool for large Fortran projects[24]
See also
- Comparison of programming languages
- Fortran programming language on Wikibooks
- High-performance computing
- List of Fortran books
- Lists of programming software development tools by language
- Numerical analysis
External links
- Fortran-lang.org — community and resources
- GNU Fortran official site
- Intel Fortran Compiler
- NAG Fortran Compiler
References
- ↑ "Compilers — Fortran Programming Language". https://fortran-lang.org/compilers/.
- ↑ https://cbfortran.sourceforge.io/
- ↑ https://projects.eclipse.org/projects/tools.photran
- ↑ "Satamas/Fortran-plugin". https://github.com/satamas/fortran-plugin.
- ↑ "Apache NetBeans archive". https://netbeans.org/community/releases/80/cpp-setup-instructions.html.
- ↑ "IDEs — Fortran Programming Language". https://fortran-lang.org/learn/os_setup/ides/.
- ↑ "Fortran libraries for linear algebra, optimization, root-finding etc. — Fortran Programming Language". https://fortran-lang.org/packages/numerical/.
- ↑ "Applications and libraries for applied mathematical and scientific problems — Fortran Programming Language". https://fortran-lang.org/packages/scientific/.
- ↑ https://www.osc.edu/sites/default/files/documentation/allinea_manual.pdf
- ↑ "Build tools — Fortran Programming Language". https://fortran-lang.org/learn/building_programs/build_tools/.
- ↑ "Athena". https://github.com/nedtaylor/athena.
- ↑ "Fiats". Lawrence Berkeley National Laboratory. https://github.com/BerkeleyLab/fiats.
- ↑ "FNN". https://github.com/cerea-daml/fnn.
- ↑ "FortNN". https://github.com/ketetefid/FortNN.
- ↑ "fortran-tf-lib". Cambridge ICCS. https://github.com/Cambridge-ICCS/fortran-tf-lib.
- ↑ "FTorch". Cambridge ICCS. https://github.com/Cambridge-ICCS/FTorch.
- ↑ "MlFortran". https://github.com/Etdescamps/MlFortran.
- ↑ Bati, Ajay; Bryngelson, Spencer H. (2024). "RoseNNa: A performant, portable library for neural network inference with application to computational fluid dynamics". Computer Physics Communications 296. doi:10.1016/j.cpc.2023.109052. Bibcode: 2024CoPhC.29609052B.
- ↑ "Specifications". https://www.openmp.org/specifications/.
- ↑ "Parallel programming with Fortran 2008 and 2018 coarrays". https://coarrays.sourceforge.io/doc.html.
- ↑ "ScaLAPACK Users' Guide". https://www.netlib.org/scalapack/slug/.
- ↑ "Fortran Unit Testing Framework (fUnit v1.0) (LAR-17081-1)". NASA Software Catalog. https://software.nasa.gov/software/LAR-17081-1.
- ↑ "Squore Architecture [Administration] · Squore 25.0.0". https://squore.vector.com/doc/user-guides/administration/architecture.html.
- ↑ https://docs.scitools.com/manuals/pdf/understand.pdf
