Python查找曲线长度
我需要使用下面3个不同的目标函数和我定义为findLength的函数来求曲线长度。我跑了一遍,找不到任何数字。有人能告诉我这段代码有什么问题吗?我对python非常陌生,这是学校作业Python查找曲线长度,python,variable-assignment,curve,Python,Variable Assignment,Curve,我需要使用下面3个不同的目标函数和我定义为findLength的函数来求曲线长度。我跑了一遍,找不到任何数字。有人能告诉我这段代码有什么问题吗?我对python非常陌生,这是学校作业 def showLength(targetFunc, minPoints, maxPoints): while minPoints <= maxPoints: x_ = (targetFunc(minPoints)[0][0]) y_ = (targetFunc(minPo
def showLength(targetFunc, minPoints, maxPoints):
while minPoints <= maxPoints:
x_ = (targetFunc(minPoints)[0][0])
y_ = (targetFunc(minPoints)[1])
length = findLength(x_, y_)
print('Length of the curve of the function %s ' % targetFunc.__name__)
print("#POINTS LENGTHS")
print(" %f %.4d" % (minPoints, length ) )
minPoints = minPoints * 2
def findLength(xs,ys):
xVal = np.array(xs)
yVal = np.ndarray(ys)
length = np.sqrt((xVal - (xVal-1))**2 + (yVal - (yVal - 1))**2 )
return length
def xSinx(numPoints):
MIN = -20
MAX = 20
xValues = np.linspace(MIN, MAX, numPoints)
yValues = xValues * np.sin(xValues)
return xValues, yValues
def halfCircle(numPoints):
MIN = -5
MAX = 5
xValues = np.linspace(MIN, MAX, numPoints)
yValues = np.sqrt(25 - xValues ** 2)
return xValues, yValues
def fractionalPowers(numPoints):
assert type(numPoints) is int and numPoints > 1, "invalid numPoints"
MIN = 0
MAX = 100
xValues = np.linspace(MIN, MAX, numPoints)
yValues = np.array(xValues**0.25 + (xValues**(1/3)) + np.sqrt(xValues))
return xValues, yValues
我不确定您是如何运行代码的,但如果您只是按照所列的方式运行脚本,则不会得到任何结果。您的脚本定义了一组函数,但没有调用它们 要运行findLength,可以在脚本底部添加以下内容:
xdata = [0, 1, 2]
ydata = [3, 2, 6]
result = findLength(xdata, ydata)
print "The result is: %d" % result
或者更好:
if __name__ == "__main__":
xdata = [0, 1, 2]
ydata = [3, 2, 6]
result = findLength(xdata, ydata)
print "The result is: %d" % result
您定义了函数,但没有执行它们。您应该询问,但不理解question@eyllanesc:我的理解是tkim提出了一个关于如何运行Python代码的问题。我在回答中提到了这一点,而不是为他/她解决问题。你能解释一下为什么你觉得我不明白原来的问题吗?