Skip to content
Snippets Groups Projects

The pystencils Source File Generator

pipeline coverage licence

A bridge over the semantic gap between pystencils and C++ HPC frameworks.

The pystencils Source File Generator is a code generation tool that allows you to declaratively describe and automatically generate C++ code using its Python API. It is part of the wider pycodegen family of packages for scientific code generation.

The primary purpose of pystencils-sfg is to embed the pystencils code generator for high-performance stencil computations into C++ HPC applications and frameworks of all scales. Its features include:

  • Exporting pystencils kernels to C++ source files for use in larger projects
  • Mapping of symbolic pystencils fields onto a wide variety of n-dimensional array data structures
  • Orchestration of code generation as part of a Makefile or CMake project
  • Declarative description of C++ code structure including functions and classes using the versatile composer API
  • Reflection of C++ APIs in the code generator, including automatic tracking of variables and #includes

Table of Contents

:maxdepth: 1

installation
getting_started
:maxdepth: 1
:caption: User Guide

usage/how_to_composer
usage/api_modelling
usage/config_and_cli
usage/project_integration
usage/tips_n_tricks
:maxdepth: 1
:caption: API Reference

api/generation
api/composer
api/lang
api/ir
api/errors