小编Fre*_*ess的帖子

检查我的代码.. 为什么 Python 的 Sympy 集成需要这么长时间?

我一直致力于绘制一个函数并朝 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)

我的问题:

  1. 为什么sy.integrate花了这么长时间?差不多30分钟..这个函数很难计算吗?

从终端来看,直到我在 SoF 提出这个问题之前,它甚至还没有完成积分计算:

1

  1. 我的代码中是否存在错误或改进我的代码的方法?
  1. [编辑]

这是来自 的答案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)

python numpy sympy

0
推荐指数
1
解决办法
207
查看次数

标签 统计

numpy ×1

python ×1

sympy ×1