如何根据理论曲线检查实验数据?(Python)

计算科学 Python 数据分析 曲线拟合
2021-12-10 06:39:28

我正在尝试检查数据集与理论曲线的一致性,特别是 RLC 电路中的带阻滤波器。

我已经生成了一个函数,它描述了我们期望从滤波器得到的曲线,以及一组数据点(幅度和相位)。通过对情节的检查,两人定性一致。

有没有办法定量地确认实验数据与我定义的函数的一致性?我看了看,curve_fit但它似乎想使用预定义的功能。

抱歉,如果以前有人问过这个问题。

1个回答

Curve_fit 适用于用户定义的函数。请参阅从 scipy curve_fit 网页复制粘贴的代码。

https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.curve_fit.html#scipy.optimize.curve_fit

只需替换def func为您的函数和x数据y即可。

import matplotlib.pyplot as plt
from scipy.optimize import curve_fit

def func(x, a, b, c):
    return a * np.exp(-b * x) + c

xdata = np.linspace(0, 4, 50)
y = func(xdata, 2.5, 1.3, 0.5)
np.random.seed(1729)
y_noise = 0.2 * np.random.normal(size=xdata.size)
ydata = y + y_noise```
plt.plot(xdata, ydata, 'b-', label='data')