Ondřej, I did send you my complete 900 lines scripts to show the problem and did not think of making a very simple demo; here it is:
import sympy import numpy n = 2 formula = 'x_0 + x_1' x = sympy.symbols('x_0:%d' % n, real=True, bounded=True) y = sympy.sympify(formula) fx = f_x = sympy.lambdify([x], y, modules='numpy') X = numpy.ones(n) print('function value=', fx(X)) Python 2.7 returns: ('function value=', 2.0) which is obviously the correct answer. Python 3.3 returns: print('function value=', fx(X)) TypeError: <lambda>() missing 1 required positional argument: 'x_1' Hope this helps to clearify the point. Cheers, Janwillem On Tuesday, 7 January 2014 11:04:30 UTC+1, Janwillem van Dijk wrote: > > I have a SymPy script with a.o. > > f_mean = lambdify([mu, sigma], mean, modules='numpy') > > > where mean is a function of mu and sigma and mu and sigma are both arrays > > mu = symbols('mu_0:%d' % n, real=True, bounded=True) > > sigma = symbols('sigma_0:%d' % n, positive=True, real=True, bounded=True) > > > Under Python 2.7.5+ SymPy 0.12.0 I can use: > > y = f_mean(x_n, ux_n) > > returning y as a numpy array of size n when x_n and ux_n are both numpy > arrays of size n. > > However, with Python 3.3.2+ and SymPy 0.7.4.1-git I get (for n=5): > > y = f_mean(x_n, ux_n) > TypeError: <lambda>() missing 10 required positional arguments: 'mu_2', > 'mu_3', 'mu_4', 'mu_5', 'sigma_0', 'sigma_1', 'sigma_2', 'sigma_3', > 'sigma_4', and 'sigma_5' > > > Which is similar to what I got in Python 2.7 before I added the > modules=numpy argument > > All this on ubuntu 13.10 > > > Have I missed something in the docs or did I stumble on a not yet > implemented feature? > > Any help very welcome.heers, > > Cheers, Janwillem > > -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sympy+unsubscr...@googlegroups.com. To post to this group, send email to sympy@googlegroups.com. Visit this group at http://groups.google.com/group/sympy. For more options, visit https://groups.google.com/groups/opt_out.