Fortran code on GitHub by category

I made a categorized list of Fortran code on GitHub, gleaned from the Fortran Wiki libraries section and updated by searching GitHub for recently updated Fortran code. Fortran-lang has a curated package list, not all from GitHub. More categories will be created and populated. Here is the current classification, which gives an idea of what Fortran is currently used for:

Fortran code on GitHub

12 Likes

Excellent initiative.

I just want to propose a modification in one category: “Quantum Chemistry and Electronic Structure”.

From my point of view, “Quantum Chemistry” and “Electronic Structure” are almost synonym and “TROVE” and “duo” are not “Electronic Structure” codes. They deal with the quantum motion of the nuclei/atoms for spectroscopy.

I’m proposing to use “Computational Chemistry” instead, so that you can fit in this category “Molecular Modeling”, “Molecular dynamics”, “Quantum dynamics” and of course “Electronic Structure”.

3 Likes

@Beliavsky thanks for starting this effort. How do you feel about contributing this list to the package index or have a separate package page at fortran-lang.org to host this information?

I want to raise that there was a similar list of popular Fortran projects in the stdlib repository a while ago. It didn’t turned out that great when I tried to add the whole list to the package index later, because lots of the meta data for the projects was buried in long issue threads or not present at all and I basically had to reevaluate the entire project list again for categorizing and tagging. I know your rigor from the Fortran wiki, therefore I am not worried about the quality of the information you collected at all.

I certainly think this it would be a great addition to the fortran-lang.org package index and your contributions would be more than welcome there.

2 Likes

Thanks for the feedback. Should I create a Chemistry category (“computational” is implied for a directory of Fortran codes) and put TROVE and duo in that category?

R has about 18000 (!) packages and task views curated by experts in various field who group the R packages into sub-categories, identify the most important ones, and explain what they do. It would be nice if Fortran had such a system, although reviewing the software of other people takes time.

2 Likes

I think that we already have in some sense a curated set of packages at Fortran Packages - Fortran Programming Language. Once fpm registry has a nice webpage of packages, we can then link them somehow and perhaps provide even more curated list for each category — although perhaps a good “proxy” is to use github stars, or github contributors, or how many fpm projects depend on a given library, and sort the packages automatically based on that.

As a physicist I can just about tolerate working under the “computational chemistry” brand, but calling it “chemistry” is going a bit far. (I jest, of course…)

More seriously though, I think the “computational” in “computational chemistry” has a bit more meaning than just “chemistry on a computer”. It specifies that what you’re doing is simulating materials directly, as opposed to just using a computer to aid whatever else it is that chemists do.

This search query might not be the best one. It only captures projects that have Fortran in the name or description, but not all projects really put the name of the language they are using in the description. It will of course show you tools that work with Fortran but are not written in Fortran, but you might miss plenty of actual Fortran projects.

Maybe try searching with an empty query for repositories using Fortran: Search · stars:"> 1" language:Fortran · GitHub. You could also try to search for Fortran programmers with Search · followers:"> 1" repos:"> 1" language:Fortran · GitHub and look around in their projects. I usually use the former query to check for Fortran projects on GitHub once a while and try to update the package index with those results.

I tried searching GitLab and Bitbucket as well, but the search interface there didn’t provide a good way to narrow down popular and active Fortran projects.

2 Likes

Yes a “Chemistry” category is fine. About “TROVE” and “duo”, those codes are in between Chemistry and Molecular Physics or Molecular spectroscopy. They can be in both category.

1 Like

In the Art and Music section you could also add stringsim. It is hosted on GitLab and not GitHub.

I found a similar attempt to collect some more general purpose Fortran code on github. There appears to be some duplication to the list above, but some other general purpose code libraries are also listed.

A similar list exists for C++ and C. This is a reasonable place to look if someone wants to extend Fortran code with pre-existing C/C++ libraries.