Python 我可以在时间数组上进行逆拉普拉斯变换吗?

Python 我可以在时间数组上进行逆拉普拉斯变换吗?,python,transformation,mpmath,Python,Transformation,Mpmath,最近我想做一些代码来做拉普拉斯逆变换 我使用mpmath.invertlaplace函数 它工作得很好,但我想删除for循环以获得这个结果 这里有一个例子 import mpmath as mp def func = lambda s: 1 / (s + k) Time = mp.linspace(1,10,100) result = [] for i in Time: value = mp.invertlaplace(func, i, method = 'stehfest',

最近我想做一些代码来做拉普拉斯逆变换

我使用mpmath.invertlaplace函数

它工作得很好,但我想删除for循环以获得这个结果

这里有一个例子

import mpmath as mp
def func = lambda s: 1 / (s + k)

Time = mp.linspace(1,10,100)

result = []

for i in Time:

     value = mp.invertlaplace(func, i, method = 'stehfest', degree = 32)

     result.append(value)

return Time, result
不幸的是,我不能将数组用于mpmath.invertlaplace函数


是否还有其他库或函数可供我使用?

我不确定是否理解您真正想要的,但您上面提供的代码有几个错误,使其无法工作。首先,
func
没有“def”,因此应该是:

func=lambda s:1.0/(s+1.0)

另外,
lambda
中的
k
没有定义,所以我将其设为等于1(1.0),只是为了让代码开始

下面的代码工作正常。从它开始,你可以(希望)改变它以达到你的目标

import mpmath as mp

func = lambda s: 1.0/(s + 1.0)

Time = mp.linspace(1,10,100)

result = []

for i in Time:

    value = mp.invertlaplace(func, i, method = 'stehfest', degree = 32)

    result.append(value)

    print (i, value)

希望有帮助。祝你好运

哦。非常感谢你。这是我在堆栈溢出中的第一个问题,所以我犯了一些错误。对我犯了一个错误。我需要像你一样定义k=1.0。实际上,我真正的问题是“删除for循环”。因为我想让它更快。