三次样条插值法
文章目录一、分段插值1、三次样条插值一、分段插值1、三次样条插值概念:三次样条(cubic spline)插值代码:import numpy as npimport scipy.interpolate as spiimport matplotlib.pyplot as plt# 生成[-10,10]内长度为41的序列x = np.linspace(-10, 10, 41)y = np.sin(x
·
一、分段插值
1、三次样条插值
三(二)次样条插值就是在任意两点之间插入用三(二)次函数连接,且点的连接处的导数相同。根据过点和点处导数相同可以联立方程求解。
概念:三次样条(cubic spline)插值
代码:
import numpy as np
import scipy.interpolate as spi
import matplotlib.pyplot as plt
# 生成[-10,10]内长度为41的序列
x = np.linspace(-10, 10, 41)
y = np.sin(x ** 3) / np.cos(x ** 2)
# 观测数据点
ix3 = np.linspace(x[0], x[-1], 100)
# 三次样条插值
ipo3 = spi.splrep(x, y, k=3) # 生成模型参数
iy3 = spi.splev(ix3, ipo3) # 生成插值点
plt.scatter(x, y)
plt.plot(ix3, iy3, 'r')
plt.legend(['origin', 'interp'], loc='upper left')
plt.show()
更多推荐
已为社区贡献1条内容
所有评论(0)