在线时间 1630 小时 最后登录 2024-1-29 注册时间 2017-5-16 听众数 82 收听数 1 能力 120 分 体力 564650 点 威望 12 点 阅读权限 255 积分 174618 相册 1 日志 0 记录 0 帖子 5313 主题 5273 精华 3 分享 0 好友 163
TA的每日心情 开心 2021-8-11 17:59
签到天数: 17 天
[LV.4]偶尔看看III
网络挑战赛参赛者
网络挑战赛参赛者
自我介绍 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
群组 : 2018美赛大象算法课程
群组 : 2018美赛护航培训课程
群组 : 2019年 数学中国站长建
群组 : 2019年数据分析师课程
群组 : 2018年大象老师国赛优
数学建模插值法——三次埃尔米特插值&三次样本插值(笔记) 4 X+ [( Z% @+ G) Q$ p( v7 r$ b
; R: z% E7 A0 D' T& X _# j 今天学习了插值法的matlab实现。
: @3 m- | w \2 s" q3 J 我们接触过五种基本的插值方法,有拉格朗日插值、牛顿插值、分段线性插值、分段三次Hermite插值和样条插值(三次)。
$ D) Q F; d$ W# b w
8 ^0 b, X P9 l' Z 插值法在数学建模中的应用:数模比赛中,常常需要根据已知的函数点进行数据、模型的处理和分析,而有时候现有的数据是极少的,不足以支撑分析的进行,这时就需要使用一些数学的方法,“模拟产生”一些新的但又比较靠谱的值来满足需求,这就是插值的作用。8 y W# Y6 D8 I2 t! A, _
@/ l4 I% \1 O, [. E, m' H8 Q 一般来讲,数学建模中主要用到的是 分段三次Hermite插值和三次样条插值
9 \) J( H5 `" m! [5 J Z 而matlab中都有对应的函数(感慨一下:matlab真强大!)
) r X; P2 I) Y+ e3 ^; k$ a 这两种插值的matlab实现也是本文的重点。
& j ]' i' R9 ~% s* a
/ n; }8 a, @ _7 B- t 接下来先来用数学定义简单解释一下 分段三次Hermite插值和三次样条插值给有需要的人(便于理解)
1 ]8 {& K: b2 R5 E* i! X* i9 Y: H1 b* J 1)分段三次Hermite插值
0 N3 o0 [" L& D' K* M ① 埃尔米特插值多项式:插值多项式要求在插值节点上函数值相等,有的实际问题还要求在节点上的导数值相等,甚至高阶导数值也相等,满足这种要求的插值多项式成为埃尔米特插值多项式。
) a" O! T9 h& f (直接使用埃尔米特插值得到的多项式次数较高,也存在龙格现象,因此在实际应用中,往往使用分段三次埃尔米特插值多项式)
& I1 q! C' K! n" x. l3 Z O ② 分段三次埃尔米特插值:3 c5 @$ ~! V* L
- `) S# ?( P. D5 w# H
& Y# z9 B5 A. k5 W5 d5 M
2)三次样条插值函数8 ] |6 E2 d( s0 L3 h) Z
, y+ c8 B' `3 S, \4 H& } 其次,再用matlab分别实现两种插值法/ ?- \/ L; C( N4 x, G2 h$ `
这里应用背景是:MathorCup第六届A题 淡水养殖池塘水华发生及池水净化处理
( A! ?5 M6 x: Y( h 这道题中,附件2中COD、溶氧、PH值等数据均是隔两周采样一次,数据量不足以用于建立合理的模型,因此要考虑现有数据进行插值以补充数据。具体附件截图如下:
1 @7 d3 e+ i* @0 }9 W* T8 z7 Z% m
& l9 e$ H5 j1 e0 H* z+ g1 i y
接下来用matlab进行数据补充实现(注:叶绿素A、B、C以及CA2+、MG+等数据不做插值 )) O( A; ]% c' ^! k
9 t+ s u0 [9 l$ y9 T
这是我写的代码:
! N( k, \# D3 I+ Z+ L 1、三次埃尔米特插值(spline函数):: b* w5 R+ q2 b" d7 n
(1)代码部分:* q, O! M& g V |
3 _1 t5 S3 G# Y: t' u (2)运行结果:: a3 M. p, U% _* m
- V0 s( V3 V$ k% E: ?
# N6 c: f+ e# F8 y0 n! V/ E# c 2、三次样条插值
* w: l+ N$ n* W/ t (1)代码部分(pchip函数):3 @8 y' Q" x2 o/ U: @: {* x& m/ N: G1 K
6 @8 Z! ]- |8 O1 \
5 C V$ K' g% N5 Q( ]7 f (2)运行结果:
9 A/ c2 p" ^. W% v E9 @( j
/ n9 H" Q; {' r: I
- z3 h* `, t- @) y 经过两次试验发现,大体上三段埃尔米特插值和三次样条插值插值效果相似,三次样条插值生成的曲线更加平滑。由于我们不知道数据的生成过程,因此这两种插值都可以使用。
1 C* y6 B) |( {3 u3 | , ~$ B6 |& `+ M6 I
注:以上内容均参考清风老师的数学建模视频讲解
7 |6 U" s, ^5 |8 ~& V, N* t1 Q5 k 原文链接:https://blog.csdn.net/weixin_43793141/article/details/105176616% \9 L1 }- _5 M1 y4 [' S5 I1 F
6 J, m. y# }* d1 ?/ a% n, r8 ? , _ V$ r$ w5 p. C) j6 ~
zan