三次样条插值法

Posted hellobigorange

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三次样条插值法相关的知识,希望对你有一定的参考价值。

一、分段插值

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()

以上是关于三次样条插值法的主要内容,如果未能解决你的问题,请参考以下文章

三次样条插值介绍

三次样条插值

如何使用 CuPy 在 python 上进行三次样条插值?

三次样条插值

如何通过python实现三次样条插值

Spline(三次样条插值)