Skip to content

exasim-project/NeoFOAM

Repository files navigation

Requirements | Compilation | Documentation |

NeoFOAM

NeoFOAM provides platform-portable implementations of common CFD algorithms and solvers using NeoN as a computational backend. Additionally, It implements converters between OpenFOAM and NeoN datastructures such that you can run examples, benchmarks and tests on accelerator devices.

Requirements

NeoFOAM has the following requirements

  • cmake 3.22+
  • gcc >= 12 or clang >= 18+
  • OpenFOAM 2406+
  • NeoN (latest version)

Compilation

We provide several Cmake presets to set commmonly required flags for building NeoFOAM

cmake --list-presets # List existing presets
cmake --preset production # Configure for production
cmake --build --preset production # Build for production

Check the documentation for details

Structure

The repository is structured in the following way:

  • src and include implement common functionality to copy data between OpenFOAM and NeoN
  • tests demonstrating that NeoFOAM and OpenFOAM deliver identical results are provided by this repository in the test folder.
  • examples provides examples of how NeoFOAM can be used for writing applications
  • tutorials provides tutorial cases which can be run like typical OpenFOAM cases

About

Platform portable examples for OpenFOAM

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 10