如何使用最小二乘曲线拟合猜测没有松弛行为的实际洛伦兹函数

How to guess the actual lorentzian function without relaxation behavior with Least square curve fitting

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

所以总而言之,我测量了一个信号(蓝色曲线,See plot of the measured data and the initial guess for the lorentzian function),这个信号是洛伦兹函数和某个松弛核的卷积。我对洛伦兹函数有一个初步的猜测(见绿色曲线),但正如你所注意到的,绿色曲线并不是真正完美的洛伦兹函数,因为它在底部仍然是不对称的。我从来没有使用过这种曲线拟合,如果有人能给我一些代码示例来找到想要的洛伦兹函数或实际的松弛内核 exp(-t/tau).

,我将不胜感激

现在分步进行:

  1. 假设我们有一个洛伦兹函数,它随着一定的弛豫时间 tau 而衰减,tau 不是常数而是时间的函数。假设我们有一个测量数据,我们将其建模为洛伦兹函数和松弛核之间的 卷积,exp(-t/tau)(请参见蓝色曲线)
  2. 通过我实现的某个算法,我初步猜到了"unrelaxated"洛伦兹函数和松弛核exp(-t/tau) (请看绿色的)。
  3. 现在我想进行最小二乘曲线拟合以确定最佳松弛内核和最适合我数据的洛伦兹函数。

我使用了 scipy 最新版本中的差分进化遗传算法来帮助将双洛伦兹峰方程拟合到拉曼光谱数据,并取得了出色的结果。将我的 GitHub 代码中的数据和拟合方程更改为您自己的,您应该完成了。

这个项目的 GitHub URL 是:

https://github.com/zunzun/RamanSpectroscopyFit