1

我是 Python 新手。我正在尝试 Sympy 和 Numpy。

我在 sympy 中有这个表达式如下

x, n = symbols('x n')
expression = (2/n)*sin(n*x)
f = lambdify( [x,n], expression, "numpy")
f(a,b)

x值范围就像说a = numpy.linspace(0,numpy.pi)

n 是一个简单的数组,比如说b = numpy.linspace(1,6,6)

在论文中,首先我将替换表达式中的 n 个值,然后在 x 的每个值处评估表达式。

最后一步f(a,b)不会做我的工作。它显然不会。

我试过了,x = [numpy.linspace(0,numpy.pi) for x in range(6)] 但这不是我猜的方式。

我该怎么做?

编辑。

I tried using this and it works fine.
f = sympy.lambdify([x,n], (2/n)*sy.sin(n*x), "numpy")
a = numpy.linspace(0,numpy.pi)
y = f(a,1)+f(a,2)+f(a,3)+f(a,4)+f(a,5)+f(a,6)+f(a,7)

但我想达到 f(a,50)。

4

0 回答 0