清风数学建模学习笔记——应用matlab实现分段三次埃尔米特(Hermite)插值与三次样条插值
插值算法
数模比赛中,常常需要根据已知的函数点进行数据、模型的处理和分析,而有时候现有的数据是极少的,不足以支撑分析的进行,这时就需要使用一些数学的方法,模拟产生一些新的但又比较靠谱的值来满足需求,这就是插值的作用。另外也可以通过插值起到预测的作用。
文章目录
- 插值算法
- 一、拉格朗日插值法与牛顿插值算法中的弊端
- 二、分段三次埃尔米特插值与三次样条插值
- 三、Matlab实现
一、拉格朗日插值法与牛顿插值算法中的弊端
拉格朗日插值法 和 牛顿插值法 都存在 龙格现象,即在两端处波动极大,产生明显的震荡,使得函数的误差会很大。其次,两种插值仅仅要求插值多项式在插值节点处与被插函数有相等的函数值,而这种插值多项式却 不能全面反映被插值函数的性态。
二、分段三次埃尔米特插值与三次样条插值
直接使用埃尔米特插值得到的多项式次数较高,也存在着龙格现象。因此在实际应用中,往往使用分段 三次埃尔米特插值多项式(PCHIP)。
分段三次埃尔米特
Matlab有内置的函数: p = pchip(x,y, new_x)
- 其中 x 是已知的样本点的横坐标;
- y 是已知的样本点的纵坐标;
- new_x是要插入处对应的横坐标
三次样条插值
三次样条插值比三次埃米特插值更加光滑。
Matlab有内置的函数:p = spline(x,y, new_x)
- x是已知的样本点的横坐标;
- y是已知的样本点的纵坐标;
- new_x是要插入处对应的横坐标
三、Matlab实现
plot函数用法:
plot(x1,y1,x2,y2)
- 线方式: ‐ 实线 :点线 ‐. 虚点线 ‐ ‐ 波折线
- 点方式: . 圆点 +加号 * 星号 x x形 o小圆
- 颜色: y黄 r红 g绿 b蓝 w白 k黑 m紫 c青
分段三次埃尔米特插值
% 分段三次埃尔米特插值
x = -pi:pi; y = sin(x);
new_x = -pi:0.1:pi;
p = pchip(x,y,new_x);
plot(x, y, 'o', new_x, p, 'r-')
三次样条插值
% 分段三次埃尔米特插值
x = -pi:pi; y = sin(x);
new_x = -pi:0.1:pi;
p = spline (x,y,new_x);
plot(x, y, 'o', new_x, p, 'r-')
三次样条插值和分段三次埃尔米特插值的对比
% 三次样条插值和分段三次埃尔米特插值的对比
x = -pi:pi;
y = sin(x);
new_x = -pi:0.1:pi;
p1 = pchip(x,y,new_x); %分段三次埃尔米特插值
p2 = spline(x,y,new_x); %三次样条插值
plot(x,y,'o',new_x,p1,'r-',new_x,p2,'b-')
legend('样本点','三次埃尔米特插值','三次样条插值','Location','SouthEast')
本文借鉴了数学建模清风老师的课件与思路,如果大家发现文章中有不正确的地方,欢迎大家在评论区留言,也可以点击查看下方链接查看清风老师的视频讲解~
原文链接:https://www.bilibili.com/video/BV1DW411s7wi
清风数学建模学习笔记——应用matlab实现分段三次埃尔米特(Hermite)插值与三次样条插值相关推荐
- 清风数学建模学习笔记——主成分分析(PCA)原理详解及案例分析
主成分分析 本文将介绍主成分分析(PCA),主成分分析是一种降维算法,它能将多个指标转换为少数几个主成分,这些主成分是原始变量的线性组合,且彼此之间互不相关,其能反映出原始数据的大部分信息. 一般 ...
- 清风数学建模学习笔记——灰色关联分析(GRA)详细解读与案例分析
灰色关联分析 灰色关联分析的基本思想 是根据序列曲线几何形状的相似程度来判断其联系是否紧密,曲线越接近,相应序列之间的关联度就越大,反之则越小. 此方法可用于 进行系统分析,也可应用于对问题 ...
- 清风数学建模学习笔记——K-means聚类模型详解及SPSS操作流程
聚类模型 聚类模型,就是将样本划分为有类似的对象组成的多个类的过程.聚类后,我们可以更加准确的在每个类中单独使用统计模型进行估计.分析或预测:也可以探究不同类之间的相关性和主要差异.此外,聚类与分 ...
- 清风数学建模学习笔记——灰色预测模型推导及原理详解
灰色预测模型 灰色预测是对既含有已知信息又含有不确定信息的系统进行预测,就是对在一定范围内变化的.与时间有关的灰色过程进行预测. 灰色预测对原始数据进行生成处理来寻找系统变动的规律,并生成有较 ...
- 清风数学建模学习笔记——系统(层次)聚类原理详解及案例分析
系统聚类 系统聚类的合并算法通过计算两类数据点间的距离,对最为接近的两类数据点进行组合,并反复迭代这一过程,直到将所有数据点合成一类,并生成聚类谱系图.此外,系统聚类可以解决簇数 K 的取值问题, ...
- 【数学建模学习笔记【集训十天】之第六天】
数模学习目录 Matplotlib 学习 Matplotlib简介 Matplotlib 散点图 运行效果如下: Matplotlib Pyplot 运行效果如下: 关于plot() 运行效果如下: ...
- 数学建模学习笔记(2.3)lingo软件求解线性规划问题
数学建模学习笔记(2.3)lingo软件求解线性规划问题 lingo软件的优势在于体积小,专注于解决优化问题 且编程语言通俗易懂,没有门槛 对于刚刚接触数学建模同学比较友善 当然对于已经参与建模很久的 ...
- 数学建模学习笔记之评价问题聚类分析法
数学建模学习笔记之评价问题聚类分析法 物以类聚.人以群分. 聚类分析是一个很大的概念,显然根据分类的依据不同会出现很多很多聚类的方法.例如K-Means .Sequential Leader.Mode ...
- 数学建模学习笔记(1)数学模型的特点和分类
数学建模学习笔记(1)数学模型的特点和分类 ps:学习的教材为姜启源著的<数学模型(第四版)> 领取数模资料和更多内容请关注公众号:拾壹纪元 传送门: 线性规划(LP)问题 https:/ ...
最新文章
- 腾讯员工吐槽:团队来了个阿里高p,瞬间会议变多,群多了
- 如何健壮你的后端服务
- 脏读、幻读和不可重复读 + 事务隔离级别
- B01_NumPy Ndarray对象(ndarray内容结构,参数,多维,最小维度,dtype参数)
- C语言函数题-取子串 (10分)
- JS替换地址栏参数值
- Int与String之间相互转换
- 在C语言中 下面标识符非法的是,下面哪一项在Java中是非法的标识符? 答案:Youme...
- 微信小程序定时器setInterval()的使用注意事项
- Zookeeper使用超级用户删除带权限的节点
- Android开发笔记(四十四)动态UI事件
- 【图像处理】MATLAB:表示与描述
- cmake设置了CMAKE_MODULE_PATH,include找不到文件
- 【问题解决方案】git clone失败的分析和解决
- 2014年物联网Internet of Things应用简介
- php函数体用return,php递归函数使用return问题
- 神经网络和深度学习(一)——初识神经网络
- 为什么90%的人物画像都是没用的?
- 红黑树添加和删除节点原理
- maven pc配置要求_竞速游戏《F1 2019》PC配置要求 GTX 1660ti即可畅玩
热门文章
- nRF52832学习记录(十二、SPI接口的应用 Micro SD卡读写测试)
- STM32 BSRR BRR ODR 寄存器解析
- 解决ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr]错误
- 小型云台机械手红外搬运功能的实现
- C语言从键盘上输入10个评委,编程:输入评委给出的10个分数,输出平均分
- Flink之Java入门
- 富文本编辑器使用 ( 手动上传图片视频 动态插入到标签中 )
- 【Vue】Teleport 传送门功能
- 点石互动--精彩文章收录
- 点击 选中该元素, 改变当前点击元素的样式,其他元素样式不变