在Sage Math中绘制Python函数
我一直在尝试使用Sage Math绘制在Sage Math中绘制Python函数,python,plot,sage,Python,Plot,Sage,我一直在尝试使用Sage Math绘制1和一些非负数x的算术几何平均值,但我正在努力使plot函数接受Python函数作为输入: plot(agm(1,x), (x,0,5)) 产生以下错误: TypeError: Cannot evaluate symbolic expression to a numeric value. 其中agm(x,y)的定义如下: def agm(x,y): x,y = RDF(x),RDF(y) a = (x+y)/2 g = sqrt(
1
和一些非负数x
的算术几何平均值,但我正在努力使plot
函数接受Python函数作为输入:
plot(agm(1,x), (x,0,5))
产生以下错误:
TypeError: Cannot evaluate symbolic expression to a numeric value.
其中agm(x,y)
的定义如下:
def agm(x,y):
x,y = RDF(x),RDF(y)
a = (x+y)/2
g = sqrt(x*y)
diff = a-g
while diff > (1/10**11):
newa = (a + g)/2
newg = sqrt(a*g)
a,g = newa,newg
diff = a - g
return a
我曾尝试在绘图时用x
替换x.n()
,但这并没有改变任何事情
如何绘制此Python函数?如果运行此代码
没有RDF
它会给我一个绘图。使用RDF
它会失败
在Sage
RDF
中是一个真正的双字段。在Python中,浮点数已经是双倍的,如果这是您想要了解的。@DavidG上面的示例是最小的、完整的和可验证的。“有什么问题吗?”大卫,我注意到你从来没有回答过任何关于圣人数学的问题,所以我想我应该解释一下。Sage是一套完整的数学程序,因此不需要包含单独的软件包。你可以在这里运行上面的代码:是的,你是对的。使用提供的链接并运行代码,错误似乎出现在x,y=RDF(x),RDF(y)
行,但我只知道这些。在这个问题中包含整个错误消息可能会很好?这是您想要的吗?在这种情况下,lambda是非常好的注释。