我是 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)。