Python 如何用最小二乘曲线拟合猜测实际洛伦兹函数而无松弛行为

Python 如何用最小二乘曲线拟合猜测实际洛伦兹函数而无松弛行为,python,curve-fitting,curve,least-squares,data-fitting,Python,Curve Fitting,Curve,Least Squares,Data Fitting,我想问你是否有可能实现这个想法: 总之,我测量了一个信号(蓝色曲线),这个信号是洛伦兹函数和某个松弛核的卷积。我对洛伦兹函数有一个初步的猜测(见绿色曲线),但正如你所注意到的,绿色曲线并不是一个完全的洛伦兹函数,因为它在底部仍然是不对称的。我从未使用过这种类型的曲线拟合,如果有人能给我看一些代码示例来找到想要的洛伦兹函数或实际的松弛核exp(-t/tau),我将不胜感激 因此,现在分步骤: 假设我们有一个洛伦兹函数,它随一定的弛豫时间τ衰减,τ不是常数,而是时间的函数。假设我们有一个测量数据,我

我想问你是否有可能实现这个想法:

总之,我测量了一个信号(蓝色曲线),这个信号是洛伦兹函数和某个松弛核的卷积。我对洛伦兹函数有一个初步的猜测(见绿色曲线),但正如你所注意到的,绿色曲线并不是一个完全的洛伦兹函数,因为它在底部仍然是不对称的。我从未使用过这种类型的曲线拟合,如果有人能给我看一些代码示例来找到想要的洛伦兹函数或实际的松弛核exp(-t/tau),我将不胜感激

因此,现在分步骤:

  • 假设我们有一个洛伦兹函数,它随一定的弛豫时间τ衰减,τ不是常数,而是时间的函数。假设我们有一个测量数据,我们将其建模为洛伦兹函数和松弛核之间的卷积,exp(-t/tau)(请参见蓝色曲线)
  • 通过我实现的某个算法,我对“未松弛”洛伦兹函数和松弛核exp(-t/tau)有了第一个猜测 (请看绿色的那个)
  • 现在我想做最小二乘曲线拟合,以确定最佳松弛核和洛伦兹函数的最佳拟合,这将是我的数据
    我使用了scipy最新版本中的差分进化遗传算法来帮助将双洛伦兹峰方程拟合到拉曼光谱数据,并获得了很好的结果。将我的GitHub代码中的数据和拟合方程更改为您自己的,您就应该这样做了

    此项目的GitHub URL为:


    谢谢你,詹姆斯!看起来很完美!