如何将数据拟合到 Gnuplot 中的 Lennard-Jones 势?

问题描述 投票:0回答:1

我正在尝试根据相应的数据使用 Lennard-Jones 势公式,在 Gnuplot 中对以下数据集进行拟合:

1    20.6711
1.1  12.8327
1.2  6.70081
1.3  2.56984
1.4  -0.0348628
1.5  -1.50733
1.6  -2.21619
1.7  -2.41084
1.8  -2.29524
1.9  -2.02128
2    -1.76153
2.1  -1.47329
2.2  -1.21735
2.3  -0.986853
2.4  -0.786588
2.5  -0.602345
2.6  -0.442397
2.7  -0.314293
2.8  -0.208958
2.9  -0.121526
3    -0.16448
4    -0.0488864
5    0
6    0.0207913
7    0.0275973
8    0.186272
9    0.0402228
10   0.0421324

我尝试了以下方法,但它没有给出 sigma 和 epsilon 的预期值。

f(x) = (4*epsilon) * ( (sigma/(x))**12 - (sigma/(x))**6  )
set fit brief nolog
fit f(x) "data" u 1:2 via sigma,epsilon
plot f(x) lw 3 lc "blue"

参数的计算应得出 Epsilon 等于 2.43,Sigma 等于 1.39,如图所示。

任何人都可以提供有关如何在 Gnuplot 中执行此拟合的指导,或者建议一种替代方法吗?任何帮助或见解将不胜感激。

谢谢!

gnuplot physics curve-fitting chemistry
1个回答
0
投票

在微积分检查之前通常很有用。

显然图2中的曲线不是抛物线。

这就是为什么简单的 Lennard-Jones 方程与数据的拟合非常糟糕。

这不是数学上的拟合困难。这是物理模型与测量不符的问题。

根据 jlandercy 的明智评论,简单的 Lennard-Jones 方程中缺少一些东西。在构建模型时应考虑一个额外的现象。

© www.soinside.com 2019 - 2024. All rights reserved.