This page contains some pointers to code which was used to produce numerical examples in some of my papers. The aim is to make my research more reproducible, as well as to provide code which may be of interest to the wider community.


pyiga is a Python research toolbox for IgA. It's hosted at GitHub:

The main motivations to create it were:

Currently, being built only to support my personal research interests, pyiga has a somewhat minimalistic feature set. There is an (incomplete) API reference. For installation and basic usage instructions, see the GitHub page.

Fast black-box assembling for Isogeometric Analysis

These are implementations of the algorithm described in the paper "A Black-Box Algorithm for Fast Matrix Assembly in Isogeometric Analysis". Please cite this paper if you use the following code in your research. Two implementations are available:

Robust multigrid for IgA based on stable splittings of spline spaces

A somewhat simplified implementation in Python, using the pyiga toolbox, of the multigrid algorithm presented in this paper with S. Takacs (to appear in SINUM), can be found in this IPython notebook.

Back to Clemens Hofreither's homepage