【12月学习进度3/31—计算机图形学期末准备01】拉格朗日插值 + 三次Hermite插值
相关概念
- 型值点:事先给定的离散点
- 插值:得到的曲线通过所有的型值点
- 逼近:不要求通过给定的所有型值点,用给定型值点控制曲线形状
Hermite多项式
拉格朗日插值
拉格朗日插值是当 j=0j=0j=0 时,即只给出函数值的Hermite多项式插值问题。
参考通俗易懂讲解视频
拉格朗日插值多项式:
其中 li(x)l_i(x)li(x) 是插值基函数,它类似开关。
因为当且仅当 x=xix = x_ix=xi 时,li(xi)l_i(x_i)li(xi)为1,否则为0;
相当于x=xix = x_ix=xi时,开关 iii 打开,其余开关均闭合,f(xi)=yif(x_i) = y_if(xi)=yi
这就保证了 给定 n+1n+1n+1 个点,拉格朗日插值法可以构造出 nnn 阶多项式,恰好穿过这 n+1n+1n+1 个点
f(xi)=yif(x_i)=y_if(xi)=yi
(i=0,1,2,...,n)(i = 0,1,2,...,n)(i=0,1,2,...,n)
Q:n+1个点为什么构造n阶插值多项式?
n阶多项式: f(x)=a0+a1∗x+a2∗x2+a3∗x3+...+an∗xnf(x) = a_0 + a_1*x + a_2*x^2 + a_3*x^3 + ... +a_n*x^nf(x)=a0+a1∗x+a2∗x2+a3∗x3+...+an∗xn
n阶多项式有 n+1n+1n+1 个系数(a0,a1,...ana_0,a_1,...a_na0,a1,...an)
n+1个点 <==> n+1个条件(方程)<=> 可解n+1个变量 <=> n阶多项式可确定
对于一组给定的点,拉格朗日插值法总能给出一条最低次数函数穿过这些点
但当一组连续均匀的点中出现一个“叛徒”(异常点),则拉格朗日插值就会想办法通过这个点,则就会出现龙格现象(Runge Phenomenon)。
【龙格现象】参考视频演示
利用多项式对某一函数进行逼近时,多项式次数越高,插值结果反而越偏离原函数的现象。(次数比较高时,产生剧烈的振荡)
例题
已知函数 f(x)f(x)f(x),f(144)=12,f(169)=13,f(225)=15f(144)=12 , f(169)=13 , f(225)=15f(144)=12,f(169)=13,f(225)=15.
求 f(x)f(x)f(x) 的二次拉格朗日插值多项式.
解:
- 题目给定离散点:(x0,y0),(x1,y1),(x2,y2)(x_0,y_0) , (x_1,y_1) , (x_2,y_2)(x0,y0),(x1,y1),(x2,y2)
其中 x0=144,y0=12,x1=169,y1=13,x2=225,y2=15x_0 = 144,y_0=12 , x_1=169,y_1=13,x_2= 225,y_2=15x0=144,y0=12,x1=169,y1=13,x2=225,y2=15 ; - 构造插值基函数 li(x)l_i(x)li(x)
l0(x)=(x−x1)(x−x2)/(x0−x1)(x0−x2)l_0(x) = (x-x_1)(x-x_2)/(x_0-x_1)(x_0-x_2)l0(x)=(x−x1)(x−x2)/(x0−x1)(x0−x2)
l1(x)=(x−x0)(x−x2)/(x1−x0)(x1−x2)l_1(x) = (x-x_0)(x-x_2)/(x_1-x_0)(x_1-x_2)l1(x)=(x−x0)(x−x2)/(x1−x0)(x1−x2)
l2(x)=(x−x0)(x−x1)/(x2−x0)(x2−x1)l_2(x) = (x-x_0)(x-x_1)/(x_2-x_0)(x_2-x_1)l2(x)=(x−x0)(x−x1)/(x2−x0)(x2−x1) - 二次拉格朗日插值多项式 L(x)L(x)L(x)
L(x)=y0∗l0(x)+y1∗l1(x)+y2∗l2(x)L(x) = y_0*l_0(x) + y_1*l_1(x) + y_2*l_2(x)L(x)=y0∗l0(x)+y1∗l1(x)+y2∗l2(x)
(代入上述值即可求出)
三次Hermite插值
参考博文
(以下图片来自于参考博文)
三次Hermite插值要求在离散点处:
- 插值多项式的值 P(x)=f(x)P(x)=f(x)P(x)=f(x)
- 插值多项式的导数值 P′(x)=f′(x)P'(x) = f'(x)P′(x)=f′(x)
借鉴拉格朗日插值法构造插值基函数的思想
两点三次Hermite插值推导过程:
参考讲解视频:【《数值分析》| 华科 | 研究生基础课-哔哩哔哩】
【列出插值需满足的条件】
【构造基函数 α0(x),α1(x),β0(x),β1(x)α_0(x) , α_1(x) , β_0(x) , β_1(x)α0(x),α1(x),β0(x),β1(x)】
以 α0(x)α_0(x)α0(x) 为例:
需满足条件:α0(x0)=1,α0(x1)=0,α0′(x0)=0,α0′(x1)=0α_0(x_0) = 1 , α_0(x_1) = 0 , α_0'(x_0)=0,α_0'(x_1) = 0α0(x0)=1,α0(x1)=0,α0′(x0)=0,α0′(x1)=0
则 x1x_1x1 是 α0(x)α_0(x)α0(x) 的二重零点 → α0(x)α_0(x)α0(x) 有一因式为 (x−x1)2(x-x_1)^2(x−x1)2
借鉴拉格朗日插值基函数 li(x)=(x−xj)/(xi−xj)l_i(x) = (x-x_j)/(x_i-x_j)li(x)=(x−xj)/(xi−xj) 在 xix_ixi 取1 ;
使用 li(x)=(x−xj)2/(xi−xj)2l_i(x) = (x-x_j)^2/(x_i-x_j)^2li(x)=(x−xj)2/(xi−xj)2
所以 α0(x)=(x−x1)2/(x0−x1)2∗(a0x+b0)α_0(x) = (x-x_1)^2/(x_0-x_1)^2*(a_0x+b_0)α0(x)=(x−x1)2/(x0−x1)2∗(a0x+b0)
(最后乘上一次式 a0x+b0a_0x+b_0a0x+b0 是为了构造 α0(x)α_0(x)α0(x) 为三次式)
同理构造三次式 β0(x),β1(x)β_0(x) , β_1(x)β0(x),β1(x) 乘以 cic_ici 零次项系数
【求解待定系数 ai,bi,cia_i , b_i,c_iai,bi,ci】
将上述条件代入到构造的插值基函数式子中,解出待定系数。
三次Hermite插值多项式:
【12月学习进度3/31—计算机图形学期末准备01】拉格朗日插值 + 三次Hermite插值相关推荐
- 【12月学习进度7/31——计算机图形学期末准备04】B样条曲线及其基函数的定义
参考讲解视频 B样条曲线产生背景 1. Bezier曲线的不足: 给定 n+1n+1n+1 个控制点,则曲线的阶数 nnn 确定 顶点数很多时,多项式阶数大,导数阶数大,曲线有很多极值点(导数为0的点 ...
- 【12月学习进度12/31——特征提取】离散KL变换原理、实例以及matlab实现(转载)
转载自:离散KL变换原理.实例以及matlab实现 从n维特征中选取m维特征,如何在信息损失最小的情况下选取特征(因为必然会删去n-m维特征),使得剩下的特征更加有利于分类,离散K-L变换(Karhu ...
- 用计算机图形画一个杯子,计算机图形学期末考试试卷(D卷)
计算机图形学期末考试试卷(D 卷) 一. 填空题(每空1分,共10分) 1. 图形的表示方法有两种: 点阵法 和 参数法 . 2. 目前常用的两个事实图形软件标准是OpenGL 和 DirectX . ...
- 计算机图形学期末复习之第四章:基本图形生成算法
可能这会是图形学期末复习最后一个整理了, 感觉其实不如直接看PPT. 1.填空20+选择20+判断10+简答20+综合30 2.没有编程题 3.复习PPT上的基本概念和算法 计算机图形学期末复习之第四 ...
- 1 2014年12月电大远程网络教育计算机统考 最 新 题 库,2014年12月份电大远程网络教育计算机应用基础统考题库试卷6...
2014年12月电大远程网络教育计算机应用基础统考题库试卷 21.Word 的替换命令所在的选项卡是____ . A ."文件" B."开始" C." ...
- 2015年12月学习计划
2015年已经快过去了,马上就又是1年的学习总结,回想起自己这几个月的所得,发现基本上没学到什么东西,对自己太懈怠了,因此决定拿出自己最初学习代码的习惯,细化到每个月的总结,来督促自己的进步 11月基 ...
- 计算机专业 英语六级作文,2012年12月英语六级作文:计算机和人类(网友版)...
2012年12月英语六级作文题目:Computer and Man Computer and Man It is believed that the computer can do almost ev ...
- 计算机图形学期末作业,计算机图形学期末大作业3D建模.doc
文档介绍: 深圳大学实验报告课程名称:计算图形学 实验名称:3D建模和真实感图形绘制学院:计算机与软件学院专业:计算机科学与技术报告人:学号:班级:1同组人:无指导教师:周虹实验时间:2014年11. ...
- 计算机图形学期末复习
写在前面: 在计算机图形学课程的期末考试之前,根据老师给的考试范围,我对一些理论性的知识进行了总结,(西南交通大学软件工程专业学习内容).将这个内容分享出来,一作为记录,二希望可以帮助其它同学期末复习 ...
最新文章
- vc的速度有c语言快吗,大家帮看看,怎么回事?Delphi竟比vc++还快
- 【强化学习】强化学习专栏上线,60多篇文章等你follow
- python类的命名空间与组合
- MySQL实现差集(Minus)和交集(Intersect)
- display:inline-block
- 【HDU - 1757】A Simple Math Problem (矩阵快速幂)
- datetime-时间日期模块
- Python IO 基本编程示例
- 计算机名生成,如何让输出的文本名字自动生成计算机名字?
- 制作cab文件(Windows自带的makecab)
- python:就喜欢看你看不惯我又干不掉我的样子
- android窗口泄漏
- 二叉搜索树+快速排序 查到文本中出现频率最多的100个词 【留学生作业】
- IDEA报错 com.microsoft.sqlserver.jdbc.SQLServerException : 列名或所提供的数目与表定于不匹配
- 虚拟机 Bochs新版本试用DOS、UCDOS、Win3.2 -- Bochs 2.6.11于2020年1月5日发布!
- 微信app支付签名错误
- JavaSE_day11【内部类、注解】
- LIU学生成绩管理系统源码【演示视频】
- R统计绘图-PCA详解1(princomp/principal/prcomp/rda等)
- 计算机网络的看法,浅谈计算机网络的发展趋势,你有什么看法吗?
热门文章
- 沁恒低功耗M0单片机CH579功耗低至0.2uA——带蓝牙USB以太网等接口
- MIKE 21 教程 2.4 水动力模块教学:干湿边界(Flood and Dry),密度关系(Density)
- 批量检测链接是否有效
- 汇编语言---算术运算指令
- eclipse汉化方式(下载,安装,中英切换)
- MATLAB说明图像增强,MATLAB数字图像处理(二)图像增强
- uploadify3.2上传插件案例
- 创客匠人直播:构建公域到私域的用户增长模型
- 超实用web前端开发工具推荐(web开发+前端性能优化+浏览器兼容性测试+……)
- Elastic 今日在纽交所上市,股价最高暴涨122%