Python 中的 stieltjes 集成
stieltjes integration in Python
我想构建一个关于 Stieltjes 积分的隐式积分计算器,这意味着我对某种度量(不一定是勒贝格)进行积分,并得到一个 "function object",我可以在其中替换、添加或子结构化另一个函数对象。我想使用 SciPy 但那里的集成不是 stieltjes 集成。
有人知道做这件事的图书馆吗?如果不是:我如何实现 returns 函数 object 的隐式集成?
您想要的可能 Sympy or some other symbolic computation system such as Maxima 可以实现。我不知道 Sympy 是否已经实现了 Stieltjes 积分,但是使用已经可用的东西你应该能够做到。
的 Stiltjes 积分的这个符号 sympy
解怎么样
integral sin(x) d(x^2)
sympy.init_session()
f = sin(x)
g = x**2
I = integrate(f*g.diff(), x)
这给了我不定积分:
-2⋅x⋅cos(x) + 2⋅sin(x)
如果你想在例如0 和 pi
,你可以这样得到它:
I.subs({x: pi}) - I.subs({x: 0})
或者,如果您想显式导入所有需要的东西,并使用函数计算结果,代码如下:
from sympy import integrate, symbols, sin, pi
x = symbols('x')
def stiltjes(f, g, a, b):
I = integrate(f*g.diff(), x)
return I.subs({x: b}) - I.subs({x: a})
result = stiltjes(sin(x), x**2, 0, pi)
我想构建一个关于 Stieltjes 积分的隐式积分计算器,这意味着我对某种度量(不一定是勒贝格)进行积分,并得到一个 "function object",我可以在其中替换、添加或子结构化另一个函数对象。我想使用 SciPy 但那里的集成不是 stieltjes 集成。
有人知道做这件事的图书馆吗?如果不是:我如何实现 returns 函数 object 的隐式集成?
您想要的可能 Sympy or some other symbolic computation system such as Maxima 可以实现。我不知道 Sympy 是否已经实现了 Stieltjes 积分,但是使用已经可用的东西你应该能够做到。
sympy
解怎么样
integral sin(x) d(x^2)
sympy.init_session()
f = sin(x)
g = x**2
I = integrate(f*g.diff(), x)
这给了我不定积分:
-2⋅x⋅cos(x) + 2⋅sin(x)
如果你想在例如0 和 pi
,你可以这样得到它:
I.subs({x: pi}) - I.subs({x: 0})
或者,如果您想显式导入所有需要的东西,并使用函数计算结果,代码如下:
from sympy import integrate, symbols, sin, pi
x = symbols('x')
def stiltjes(f, g, a, b):
I = integrate(f*g.diff(), x)
return I.subs({x: b}) - I.subs({x: a})
result = stiltjes(sin(x), x**2, 0, pi)