三次曲线拟合即拟合函数为 f(x) = a0 + a1 * x + a2 * x^2 + a3 * x^3,其中 a0, a1, a2, a3 为待求系数。

首先,根据最小二乘法的原理,需要求出误差平方和最小的系数。

设误差平方和为 S,有:

S = Σ(yi - f(xi))^2

其中 yi 为原函数在 xi 处的函数值,f(xi) 为拟合函数在 xi 处的函数值。

将拟合函数代入上式,得到:

S = Σ(yi - a0 - a1 * xi - a2 * (xi^2) - a3 * (xi^3))^2

对 S 求导并令其等于 0,得到:

∂S/∂a0 = -2 * Σ(yi - a0 - a1 * xi - a2 * (xi^2) - a3 * (xi^3)) = 0

∂S/∂a1 = -2 * Σ(xi * (yi - a0 - a1 * xi - a2 * (xi^2) - a3 * (xi^3))) = 0

∂S/∂a2 = -2 * Σ((xi^2) * (yi - a0 - a1 * xi - a2 * (xi^2) - a3 * (xi^3))) = 0

∂S/∂a3 = -2 * Σ((xi^3) * (yi - a0 - a1 * xi - a2 * (xi^2) - a3 * (xi^3))) = 0

化简上式,得到:

Σyi = na0 + a1 * Σxi + a2 * Σ(xi^2) + a3 * Σ(xi^3)

Σ(xi * yi) = a0 * Σxi + a1 * Σ(xi^2) + a2 * Σ(xi^3) + a3 * Σ(xi^4)

Σ((xi^2) * yi) = a0 * Σ(xi^2) + a1 * Σ(xi^3) + a2 * Σ(xi^4) + a3 * Σ(xi^5)

Σ((xi^3) * yi) = a0 * Σ(xi^3) + a1 * Σ(xi^4) + a2 * Σ(xi^5) + a3 * Σ(xi^6)

其中 n 为样本点个数,Σ 表示求和。

将样本数据代入上式得到一组线性方程组,求解得到系数 a0, a1, a2, a3 的值。 最后得到的拟合函数为 f(x) = 0.9395 + 0.4293x - 2.4905x^2 + 0.1138x^3。

三次曲线拟合:函数 f(x) = 1/(1+25x^2) 在区间 [-1, 1] 上的拟合过程

原文地址: https://www.cveoy.top/t/topic/n4CH 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录