我已经编写了下面的代码来使用拉格朗日算法计算给定X和Y坐标集的多项式方程。该公式是使用def实现的,似乎工作正常。然而,我试图使用得到的多项式方程来获得给定范围X值的y坐标,这样我就可以绘制机器人的路径。例如,如果范围是1到15(包括1到15),程序应该计算Y的相应值,并在图形上绘制每对坐标。我不知道如何将X的值传递到def中并获得正确的Y值-我确信这相对简单,但是我的头脑完全空白!任何帮助都将不胜感激!你知道吗
import sympy
from functools import *
from sympy import *
X = Symbol('X')
def Lagrange(points):
P=[reduce((lambda x,y: x*y),[(X-points[j][0])/(points[i][0] - points[j][0]) for j in range(len(points)) if i != j])*points[i][1] for i in range(len(points))]
return sum(P)
points=[[0, 1], [1, 0], [3, 16], [-1, 16]]
print(points)
P=Lagrange(points)
print("\nLagrange equation :\n")
print(P)
您可以使用
subs
来计算一系列x值的函数。一种方法如下所示。然后可以使用matplotlib
可视化另一种方法是使用
evalf
以给定的X
值评估函数相关问题 更多 >
编程相关推荐