The Open FUSION Toolkit 1.0.0-8905cc5
Modeling tools for plasma and fusion research and engineering
Loading...
Searching...
No Matches
Open FUSION Toolkit Documentation (v1.0.0-8905cc5)

The Open FUSION Toolkit (OFT) is a finite element framework designed for simulating physical systems relevant to plasma and fusion science and engineering in complex 2D and 3D geometries. The code supports the use of high order finite element methods on an unstructured hexahedral/quadrilateral and tetrahedral/triangular grids.

The code is fully open-source and available on GitHub.

Physics Modules

Currently the framework is used to implement the following physics modules:

  • TokaMaker: Free-boundary Grad-Shafranov equilibrium solver (static and time-dependent)
  • ThinCurr: 3D thin-wall electromagnetic simulation package
  • MUG: 3D linear/nonlinear extended MHD simulation package
  • Marklin: 3D force-free, uniform \( \lambda \) equilibrium solver

Building OFT

The documentation for Building OFT on different platforms is maintained on GitHub along with the source code. At present, OFT is actively used both on macOS and Linux.

Framework modules and API

This section provides library examples and documentation to describe usage of OFT and its API to modify existing or build new physics modules. The framework and API components are also roughly grouped by the provided functionality (eg. meshing modules). Listings of individual FORTRAN modules and classes are also included along with an index of all modules, types, and functions present in the API.

Warning
The detailed documentation is under active development and may contain errors, use with care.

Programming Examples

The following is a list of documented examples for using the OFT API

Further examples exist in the regression tests sub-folders src/tests/*.

Detailed API documentation

Open FUSION Toolkit API Documentation

For information on using OFT see

Writing Documentation

OFT uses Doxygen to create structured and navigable documentation from the source code and structured comments. For more information on how to write in source documentation blocks, add documentation pages, and create new example programs/modules see Using Doxygen.

Using GIT

OFT uses GIT for version control. For information on how to use GIT see the official documentation or the unofficial example based documentation.