我一直致力于绘制一个函数并朝 y 轴和 x 轴旋转。然后使用 SymPy 获取表面积。
我尝试从终端和运行.py文件,两者都花费太长时间来计算积分以获得表面积。
这是我的代码:
import numpy as np
import sympy as sy
x = sy.Symbol("x")
def f(x):
return ((x**6) + 2)/ (8*x ** 2)
def fd(x):
return sy.simplify(sy.diff(f(x), x))
def vx(x):
return 2*np.pi*(f(x)*((1 + (fd(x) ** 2))**(1/2)))
vx = sy.integrate(vx(x), (x, 1, 3))
Run Code Online (Sandbox Code Playgroud)
我的问题:
sy.integrate花了这么长时间?差不多30分钟..这个函数很难计算吗?从终端来看,直到我在 SoF 提出这个问题之前,它甚至还没有完成积分计算:
这是来自 的答案sy.integrate:
0.392699081698724*Integral(2*(x**2 + 1)**1.0*Abs(x**4 - x**2 + 1)**1.0/x**5.0, (x, 1, 3)) + 0.392699081698724*Integral(x**1.0*(x**2 + 1)**1.0*Abs(x**4 - x**2 + …Run Code Online (Sandbox Code Playgroud)