【发布时间】:2012-08-12 19:38:46
【问题描述】:
我想编写一个程序,在循环中求解下面的定积分,该循环考虑每次迭代的常数 c 的不同值。
然后我希望将积分的每个解输出到一个新数组中。
如何最好地用 python 编写这个程序?
限制在 0 和 1 之间。
from scipy import integrate
integrate.quad
这里可以接受。我的主要困难是构建程序。
这是一个旧的尝试(失败了)
# import c
fn = 'cooltemp.dat'
c = loadtxt(fn,unpack=True,usecols=[1])
I=[]
for n in range(len(c)):
# equation
eqn = 2*x*c[n]
# integrate
result,error = integrate.quad(lambda x: eqn,0,1)
I.append(result)
I = array(I)
【问题讨论】:
-
欢迎来到 Stack Overflow!我们鼓励您research your questions。如果您有 tried something already,请将其添加到问题中 - 如果没有,请先研究并尝试您的问题,然后再回来。
-
您希望使用哪种数值积分方法?梯形法则?辛普森法则?高斯正交?蒙特卡洛积分?还是您只想要内置的
scipy.integrate.quadrature功能?请指定其中一些详细信息并展示您当前的进度,我们很乐意为您提供帮助。 -
integrate.quad在这里是可以接受的。更多的是构建程序来迭代我遇到的常量。 -
如果c是常数,为什么不使用标准解c*x^2?
-
@RolandSmith,这里的 c 代表积分常数。
标签: python loops numpy integration scipy