beliavsky / fortran-code-on-github Goto Github PK
View Code? Open in Web Editor NEWDirectory of Fortran codes on GitHub, arranged by topic
License: The Unlicense
Directory of Fortran codes on GitHub, arranged by topic
License: The Unlicense
README:2564
references github.com/lguez/NR_util
which is no longer available.
[NR_util](https://github.com/lguez/NR_util): Fortran 2003 library by Lionel Guez containing basic mathematical constants and basic procedures for numerical tasks. NR_util originates from the "utility routines" of Numerical Recipes in Fortran 90 (Press et al., 1996, Cambridge University Press, appendix C1), version 2.10a, contained in files nrtype.f90 and nrutil.f90. These files of Numerical Recipes were put in the public domain by Press et al.
README.md:110
References github.com/Bin-Cheng-THU/DEMBod
which is no longer available.
[Discrete Element Model Body (DEMBody)](https://github.com/Bin-Cheng-THU/DEMBody): software for Granular Dynamics Simulation for Planetary Science and Geophysics, by Bin Cheng. It incorporates classical granular dynamics simulations and N-body self-gravity calculation.
Just found this library (https://github.com/lewisfish/pMC/) from @lewisfish.
I suppose "Physics" would be the most suitable category.
README.md:3404
References SomajitDey/approx_stdnormal
which is no longer available (in fact, the user is no longer available).
[approx_stdnormal](https://github.com/SomajitDey/approx_stdnormal): fast generation of an array of standard normal variates using a (modified) Box-Muller transform, by SomajitDey
Add ModForUtils
https://github.com/rweed/ModForUtils
A collection of utilities written in Modern Fortran
For example the Unit Testing and XML categories are missing. I could split the list in two, leaving the numerical methods and other algorithms categories on the main README.md and putting the domain-specific categories on a different page. The main page would have
Benchmarks
Code Tools
Compiler Tests
Containers and Generic Programming
Cryptography
Databases
Dates and Times
Error Handling
Expression Parsers
Fast Fourier Transform
File I/O
Finite Elements
Fortran Books and Tutorials
Graphics, Plotting and User Interfaces
General Purpose
Interoperability
Interpolation
Linear Algebra
Mesh Generation
Neural Networks and Machine Learning
Numerical
Numerical Integration (Quadrature)
Ordinary Differential Equations
Optimization
Parallel Programming
Partial Differential Equations
Random Number Generation
Reactor Physics
Regular Expressions
Quantum Chemistry and Electronic Structure
Sorting
Statistics
Strings
Time Series
Unclassified
Unit Testing
Web Programming
XML
and the domain-specific page would have
Art and Music
Astronomy and Astrophysics
Biology and Medicine
Climate and Weather
Computational Chemistry
Computational Fluid Dynamics
Earth Science
Economics
Engineering
Games
Materials Science
Molecular Dynamics
Particle Physics
Physics
Plasma Physics
A Fortran BLAS library implemented as a free-format module.
README.md:3543
references github.com/jchristopherson/measurements
which is no longer available.
[measurements](https://github.com/jchristopherson/measurements): routines supporting calculations related to measurement activities, in the following areas: statistics, linear regression, data smoothing, filtering, Fourier transforms, peak detection, interpolation, differentiation, and integration, by jchristopherson
There is a whishlist bug filed today to Debian (link #1061367) which is my first encounter with loki
as a "Freely programmable source-to-source translation for Fortran" (landing page: https://github.com/ecmwf-ifs/loki). I don't know if/which one of the categories of your compilation were most suitable for this project.
README.md:1139
references github.com/jkennedy-usgs/heavy
which may have been renamed.
[Heavy](https://github.com/jkennedy-usgs/heavy): calculates the change in gravity caused by the change in groundwater storage as predicted by a [MODFLOW](https://github.com/MODFLOW-USGS/modflow6) groundwater-flow model, by Jeff Kennedy. Gravity change is calculated relative to the initial time step at user-specified locations (e.g., measurement locations).
README.md:2556
references github.com/ricardoyanez/naglib
which is no longer available.
[naglib - NAG Routine Replacements](https://github.com/ricardoyanez/naglib): replacements for some NAG Library routines root-finding, quadrature, sine and cosine transforms, solving ODEs, interpolation, random number generation, and special functions, by Ricardo Yanez
https://gbenthien.net/strings/index.html has the evaluate procedures; which would be a nice addition to the expression parser list.
README.md:3401
references github.com/huangli712/Zen
which is no longer available.
[Zen](https://github.com/huangli712/Zen): modern DFT + DMFT (namely, density functional theory plus dynamical mean-field theory) computation framework, by huangli712
README.md:573
references github.com/urbanjost/paranoia
which is no longer available.
[paranoia](https://github.com/urbanjost/paranoia): tests floating-point arithmetic in a Fortran programming environment, by urbanjost. This is a version of the netlib PARANOIA Fortran programs converted to procedures. They can be embedded into programs such that one can verify the behavior of the options selected to execute a program, or the simple test program can be used to experiment with various compiler selections.
README.md:881
references github.com/yhaomin2007/Nek_me
which is no longer available. It may have been renamed.
[Nek_me](https://github.com/yhaomin2007/Nek_me): Nek5000 user-defined code and examples, by yhaomin2007
Unless you intend to include only github projects, you could include the following particle physics
code, program name WHIZARD:
https://gitlab.tp.nt.uni-siegen.de/whizard/public
Development is on a non-public git, while the master development branch is always mirrored to this public gitlab-git with squashed commits.
Some good resources from Prof. Randy LeVeque
He is also the author of well known Clawpack.
https://github.com/rjleveque?tab=repositories&q=&type=&language=fortran&sort=
README.md:1686
: References github.com/Koushikphy/FORTRAN-Topics
which is no longer available.
[FORTRAN-Topics](https://github.com/Koushikphy/FORTRAN-Topics): codes to demonstrate Modern Fortran features, and codes for numerics and I/O, by Koushikphy
For the FortranCon 2021 presentation I created a comprehensive list of all fpm projects on GitHub (that means all projects that have a fpm.toml
file in their project root), available with the talk source here:
https://github.com/fortran-lang/talks/blob/main/FortranCon2021-fpm/data/fpm-projects.txt
The data was collected on the Sept. 15th, 2021 using the query:
https://github.com/search?o=desc&q=path%3A%2F+filename%3Afpm.toml&s=indexed&type=Code
README.md:1440
has the following line. This project is no longer public.
[Long-Time-Dynamics](https://github.com/AngelUMICH/Long-Time-Dynamics): studies cascade overlap and defect annealing on damage and time scales up to 1 dpa and a few seconds, respectively, by Angel Chavira. Irradiation cascades are modeled by two methods: random frenkel pair insertion analogous to electron irradiation and actual ion damage events whose dynamics are driven by traditional MD simulation.
README.md:57
references github.com/vyu16/test_nvfortran_20_11
which is no longer available.
[test_nvfortran_20_11](https://github.com/vyu16/test_nvfortran_20_11): source code test.f90 by vyu16 attempts to call getitem, defined in dummy_module.f90, incorrectly. Both ifort and gfortran are able to catch it at compile time. However, nvfortran compiles the code and seems to just ignore the call at run time.
flower, xpand, and splitf90 are now all subdirectories in https://github.com/urbanjost/apps.git
I tried other methods, but did not come up with anything that worked well with github/git/fpm and my repositories were getting cluttered with low-volume apps. I am thinking of using a separate project area or gitlab or something else, but that has drawbacks too. I have not seen a high volume of use of the ones I consolidated; others like prep(1) get enough volume to justify having their own repo, but I have a number of examples and small utilities I want to make available soon and so far this was the best I could come up with.
README.md:2830
references github.com/rouson/caffeine
which I believe has moved to the LBL repository at https://github.com/berkeleylab/caffeine.
[CoArray Fortran Framework of Efficient Interfaces to Network Environments (Caffeine)](https://github.com/rouson/caffeine): parallel runtime library that aims to support Fortran compilers with a programming-model-agnostic application binary interface (ABI) to various communication libraries, by Damian Rouson et al. Current work is on supporting the ABI with the GASNet-EX or with POSIX processes.
Here is one more project to add to the list: https://github.com/mestradam/hyplas
This code is the supplementary material of the book
de Souza Neto, E. A., Peric, D., & Owen, D. R. (2011). Computational methods for plasticity: theory and applications. John Wiley & Sons.
The original companion website can be found here: https://www.wiley.com/legacy/wileychi/desouzaneto/
README.md:2210
References github.com/Rioghasarig/trlu
which is no longer available.
[LUSOL](https://github.com/Rioghasarig/trlu): maintains LU factors of a square or rectangular sparse matrix. This repository provides LUSOL source code and a Matlab interface.
README.md:148
references github.com/wtdailey/HASTE
which is nol longer available. (User wtdailey
has no public repos.)
[High-Altitude to Space Transport Estimator (HASTE)](https://github.com/wtdailey/HASTE): high fidelity Monte Carlo code written in modern Fortran for estimating the radiation field seen by a space-based detector from a point source in or above the atmosphere, by wtdailey. The HASTE code includes models for many of the special features of this air-to-space transport problem that are not modeled, or only partially modeled, in other transport codes.
README.md:2218
references Tretyak0ID/MClib
which is no longer available.
[MClib](https://github.com/Tretyak0ID/MClib): library for matrix computations, including the LU decomposition of general and banded matrices, and matrix multiplication for banded or triangular matrices, and reading and writing matrices, by Ilya Tretyak
README.md:1915
references brocolis/cairo-fortran
which is no longer available.
[cairo-fortran](https://github.com/brocolis/cairo-fortran): libcairo bindings for Fortran from the gtk-fortran project available as a separate fpm package, by Carlos Une
README.md:2010
references brocolis/dynload-julia
which is no longer available.
[dynload-julia](https://github.com/brocolis/dynload-julia): dynamically load Julia from Fortran, by brocolis
The entry for Slave Spins
[Slave Spins](https://github.com/QcmPlab/Slave-Spins): flexible slave spins mean-field code, with support for multi-band structure and inequivalent sites, from QcmPlab. This code uses MPI for faster execution.
references a GitHub project that is no longer available.
It may be that the project is no longer public.
Here's my attempt to fetch it into the Fortran Examplse repo:
Cloning into '/Volumes/workspaces/gg-fortran-examples/FortranHPC@MomoInSpace'...
ERROR: Repository not found.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
fatal: clone of 'ssh://[email protected]/MomoInSpace/FortranHPC' into submodule path '/Volumes/workspaces/gg-fortran-examples/FortranHPC@MomoInSpace' failed
FortranHPC@MomoInSpace failed; probably no longer available
There are some great collections of code outside GitHub some of them are not maintained and they may vanish as authors are retired or passed away! I may recommend to create some mirror on GitHub and then add to this repo!
mpeg audio layer 3 encoder written in Fortran 90/95 (mp3 encoder)
https://github.com/cure-honey/uzura3
Machine learning scripts for Fortranner.
https://github.com/NaoMatch/FortLearner
From attempting to add it:
ERROR: Repository not found.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
fatal: clone of 'ssh://[email protected]/JoGebert/3D_Convolusional_Filtering' into submodule path '/Volumes/workspaces/gg-fortran-examples/3D_Convolusional_Filtering@JoGebert' failed
3D_Convolusional_Filtering@JoGebert failed; probably no longer available```
README.md:1967
references github.com/urbanjost/M_escape
which is no longer available.
[M_escape](https://github.com/urbanjost/M_escape): using in-band signaling wih ANSI control (escape) sequences to control terminal color from Fortran, by urbanjost and brocolis
README.md:3430
references github.com/kulhanek/ranlux
which is no longer available.
[ranlux](https://github.com/kulhanek/ranlux): random number generator described in the paper [RANLUX: A Fortran implementation of the high-quality pseudorandom number generator of Lüscher](https://www.sciencedirect.com/science/article/abs/pii/001046559490233X), by F. James, Computer Physics Communications, Volume 79, Issue 1 (1994). A Fortran 90 version by Alan Miller is [here](https://jblevins.org/mirror/amiller/luxury.f90).
Nice list. Nice work on the Fortran Wiki too. I merged prep and pref into just prep on github, so just remove pref. Thanks for mentioning it.
A post-processing toolset for VASP (Physics/quantumchem code), written entirely in fortran.
https://github.com/DannyVanpoucke/HIVE4-tools.
There appear to be no public repositories for this user. Found while attempting to add to Fortran Examples repo.
Cloning into '/Volumes/workspaces/gg-fortran-examples/L-GAME@OpenNWP'...
ERROR: Repository not found.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
fatal: clone of 'ssh://[email protected]/OpenNWP/L-GAME' into submodule path '/Volumes/workspaces/gg-fortran-examples/L-GAME@OpenNWP' failed
L-GAME@OpenNWP failed; probably no longer available
README,md:114
references github.com/dynamics-of-stellar-systems/dynamite_release
which appears to have been renamed just github.com/dynamics-of-stellar-systems/dynamite
.
[DYnamics, Age and Metallicity Indicators Tracing Evolution (DYNAMITE)](https://github.com/dynamics-of-stellar-systems/dynamite_release): Schwarzschild- and stellar-population modelling of stellar systems
README.md:1929
references github.com/joshjkk/forcurses
which is no longer available. The user account may be gone.
[forcurses](https://github.com/joshjkk/forcurses): ncurses wrapper by Joshua Kinder. Ncurses is a programming library that provides an API (Application Programming Interface) for building text-based user interfaces in a terminal.
README.md:3056
references github.com/alexbaekey/computational_physics
which is no longer available.
[computational_physics](https://github.com/alexbaekey/computational_physics): computational physics projects by alexbaekey
README.md:3665
references github.com/saveriocolla90/Gaussian-Mixture-ARMA-GARCH
which appears to be renamed to Gaussian-Mixture-ARMA-GARCH-model
[Gaussian Mixture ARMA-GARCH](https://github.com/saveriocolla90/Gaussian-Mixture-ARMA-GARCH): implements a Gaussian Mixture ARMA-GARCH model to fit a generic time series with zero mean and gaussian distributed standard deviations, by saveriocolla90
README.md:3212
references github.com/filipesmg/TITAN
which is no longer available.
[TIme-dependent Transport and Angular momentum of Nanostructures (TITAN)](https://github.com/filipesmg/TITAN): calculates the electric and spin excitations for bulk and thin films, by JRSuckert and filipesmg. It can describe Ferromagnetic Resonance (FMR) experiments and intrinsic Spin and Orbital Momentum Hall Effects (including Anomalous and Planar Hall effects), for example.
README.md:3120
references github.com/jonasmaziero/LibForQ
which appears to have a new name: LibForQ-v1
[LibForQ](https://github.com/jonasmaziero/LibForQ): performs several numerical tasks one frequently needs when working in quantum information science, such as trace, partial trace, and partial transpose; entanglement, discord, and coherence quantifiers; Pauli group (PG), Generalized Gell Mann Matrices (GGMM), and Bloch vector and correlation matrix with GGMM, by Jonas Maziero
The entry for commonTools appears to no longer be public.
[commonTools](https://github.com/wtdailey/commonTools): code for file I/O, Gauss-Legendre quadrature, mathematical and physical constants, interpolation, Legendre polynomials, random number generation, numerical integration, finding roots, sorting, statistics, and other topics, by Whitman T. Dailey
wtdailey
has no public repositories when I looked just now.
README.md:1564
references github.com/loicreynier/nmlinput.f90
which is no longer available.
[nmlinput.f90](https://github.com/loicreynier/nmlinput.f90): helper routines to use namelists as input files, by Loïc Reynier
README.md:2612
references github.com/msemina/SSP
which is no longer available.
[SSP](https://github.com/msemina/SSP): Scientific Subroutine Package - Fortran science package for statistics, matrix calculus, and other mathematical areas
The entry for ROSCO
[Reference OpenSource Controller (ROSCO) for wind turbine applications](https://github.com/NREL/ROSCO#nrels-reference-opensource-controller-rosco-for-wind-turbine-applications): modular and fully adaptable baseline wind turbine controller to the scientific community, from NREL. Because of the open character and modular set-up, scientists are able to collaborate and contribute in making continuous improvements to the code.
doesn't need the #nrels-reference-opensource-controller-rosco-for-wind-turbine-applications
.
The link takes you to the same place as https://github.com/NREL/ROSCO
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.