In this course, you will get to know the metaprogramming and code generation tool pystencils. We will begin with two short introductory talks on code generation in general, and on pystencils in particular. You will then have the opportunity to explore the software directly in interactive hands-on tutorials. In the afternoon, we will give additional input concerning on some advanced features of pystencils. We will close the course with a Q&A session and an outlook on how pystencils may be included into your numerical software.

Jupyter Hub

For the hands-on lessons, you will be using a prepared Jupyter Hub instance.

To start up Jupyter Hub, first go to hub.nhr.fau.de/jupyter-training-nhr-grad-school-access.php and enter your e-mail address. You will have your access credentials sent to that address. Click on the link you receive and follow the instructions.

To start the Jupyter Hub instance, select the "pystencils" profile and click "Start".

Important: When you are done with the lessons, make sure to properly shut down your Jupyter server. In Jupyter Lab, go to "File > Hub Control Panel" and press "Stop My Server" on the control panel page.

Download the Hands-On Material

In Jupyter Lab, open a terminal and run the following command to fetch the hands-on materials: 

curl https://pycodegen.pages.i10git.cs.fau.de/teaching/nhr-course-week-pystencils-hands-on/Tutorial.tar.gz | tar -xzf -

A series of Jupyter notebooks will then appear in your working directory. Open the first one and get started!

Last modified: Tuesday, 20 May 2025, 1:18 PM