Software

PlasmaFAIR Supported and Assessed Software

Fortran Tooling Hack Week

RSECon24 featured a satellite event called Back to the Fortran Future which brought together a number of Fortran developers to discuss the challenges facing the community and plan some actionable solutions. The same few problems were raised repeatedly:

FELTOR

FELTOR (Full-F ELectromagnetic code in TORoidal geometry) is a physics simulation package that uses discontinuous galerkin methods to solve plasma physics problems. As a modular system, it has a large range of potential applications, but it is primarily used to investigate plasma turbulence via gyrofluid equations.

FusionDLS

FusionDLS is a Python project that solves for the position of plasma detachment fronts in tokamak divertors. By solving a reduced model, FusionDLS is capable of quickly producing parameter scans over various divertor designs and magnetic geometries to optimise the design of divertors for next-generation devices.

tree-sitter-fortran

Tree-sitter is a popular library for parsing programming languages for syntax highlighting and code navigation in IDEs, websites, and other tools. Although modern Fortran is still widely used in academia, many syntax highlighting packages, for example, have not kept up with the developments in the language, and fail to highlight modern Fortran correctly. A Fortran grammar was already being developed, and was about 60% complete when we started to contribute.

simplesimdb

Simplesimdb is a lightweight Python library for managing the creation and management of simulation data. It is capable of tracking input parameters and linking them to a local store of output files, and therefore avoid rerunning expensive simulations for which the input parameters have been seen before. It also permits users to search a set of previous input parameters to determine which outputs already exist.