Welcome to sympy2c documentationΒΆ

The Python package sympy2c allows creation and compilation of fast C/C++ based extension modules from symbolic representations, using sympy.

sympy2c offers functionalities which are beyond the code generation capabilities already provided by sympy. This includes creating fast code for the solution of high dimensional ODEs, or numerical evaluation of integrals where sympy fails to compute an anti-derivative.

Based on the symbolic formulation of a stiff ODE, sympy2c analyzes sparsity patterns in the Jacobian matrix of the ODE, and generates loop-less fast code by unrolling loops in the internally used LU factorization algorithm and by avoiding unnecessary computations involving known zeros.

We use sympy2c within PyCosmo, see also the latest publication.