Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

sympy codegen with indices

I am doing a symbolic calculation in sage and I need a C-code of the output. I found an example in sympy documentation that does this.

from sympy import symbols
from sympy.utilities.codegen import codegen
from sympy.abc import x, y, z
[(c_name, c_code), (h_name, c_header)] = \
codegen(("f", x+y*z), "C", "test", header=False, empty=False)
print c_code,

However, this does not work when the variables I am passing to f have indices for example,

from sympy import symbols
from sympy.utilities.codegen import codegen
from sympy.abc import x[0], x[1], x[2]
[(c_name, c_code), (h_name, c_header)] = \
codegen(("f", x[0]+x[1]*x[2]), "C", "test", header=False, empty=False)
print c_code,

This results in an error. Is there a way to generate a C-code with indices in them?