Hermite插值满足在节点上等于给定函数值,而且在节点上的导数值也等于给定的导数值。对于高阶导数的情况,Hermite插值多项式比较复杂,在实际情况中,常常遇到的是函数值与一阶导数给定的情况。在此情况下,n个节点x1,x2,…,xn的Hermite插值多项式的表达式如下:

其中:

这样就很容易写出代码了,关键就是记住公式。

matlab中的实现:

Hermite.m

function f = Hermite(x,y,y_1,x0)

%求已知数据点的向后差分牛顿插值多项式

%已知数据点的x 坐标向量:x

%已知数据点的y 坐标向量:y

%已知数据点的导数向量:y_1

%求得的Hermite插值多项式或x0处的插值:f

syms t;

f = 0.0;

if(length(x) == length(y))

if(length(y) == length(y_1))

n = length(x);

else

disp('y和y的导数的维数不相等!');

return;

end

else

disp('x和y的维数不相等!');

return;

end

for i=1:n

h = 1.0;

a = 0.0;

%%计算hi和ai

for j=1:n

if( j ~= i)

h = h*(t-x(j))^2/((x(i)-x(j))^2);

a = a + 1/(x(i)-x(j));

end

end

f = f + h*((x(i)-t)*(2*a*y(i)-y_1(i))+y(i));

if(i==n)

if(nargin == 4)

f = subs(f,'t',x0);

else

f = vpa(f,6);

end

end

end

HermiteInsert.m

x=1:0.2:1.8;

y=[1 1.0954 1.1832 1.2649 1.3416];

y_1=[0.5 0.4564 0.4226 0.3953 0.3727];

f=Hermite(x,y,y_1)

f=Hermite(x,y,y_1,1.44)

x1=0:2*pi;

y1=sin(x1);

y1_1=cos(x1);

xx=0:0.5:2*pi;

yy=Hermite(x1,y1,y1_1,xx);

plot(x1,y1,'o',xx,yy,'r')

本文同步分享在 博客“风翼冰舟”(CSDN)。

如有侵权,请联系 support@oschina.cn 删除。

本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

艾尔米特插值的MATLAB实现,埃尔米特(Hermite)插值相关推荐

  1. c语言埃尔米特插值思路,【数学建模算法】(26)插值和拟合:埃尔米特(Hermite)插值和样条插值...

    1.埃尔米特(Hermite)插值 1.1.Hermite插值多项式 如果对插值函数,不仅要求它在节点处与函数同值,而且要求它与函数有相同的一阶.二阶甚至更高阶的导数值,这就是 Hermite 插值问 ...

  2. 插值与拟合 (一) : 拉格朗日多项式插值 、Newton插值 、分段线性插值、Hermite插值 、样条插值、 B 样条函数插值、二维插值

    插值:求过已知有限个数据点的近似函数. 拟合:已知有限个数据点,求近似函数,不要求过已知数据点,只要求在某种意义下它在这些点上的总偏差最小. 插值和拟合都是要根据一组数据构造一个函数作为近似,由于近似 ...

  3. 埃尔米特(Hermite)插值

    Hermite插值满足在节点上等于给定函数值,而且在节点上的导数值也等于给定的导数值.对于高阶导数的情况,Hermite插值多项式比较复杂,在实际情况中,常常遇到的是函数值与一阶导数给定的情况.在此情 ...

  4. 数学建模准备 插值(拉格朗日多项式插值,牛顿多项式插值,分段线性插值,分段三次样条插值,分段三次Hermite插值)

    文章目录 摘要(必看) 0 基础概念 什么是插值 插值用途 什么是拟合 插值和拟合的相同点 插值和拟合的不同点 1 常用的基本插值方法 1.1 多项式插值法 1.1.1 拉格朗日多项式插值法 多项式插 ...

  5. 埃尔米特(Hermite)插值及其MATLAB程序

    %hermite.m %求埃尔米特多项式和误差估计的MATLAB主程序 %输入的量:X是n+1个节点(x_i,y_i)(i = 1,2, ... , n+1)横坐标向量,Y是纵坐标向量, %以f'(x ...

  6. hermit插值 matlab,埃尔米特(Hermite)插值及其MATLAB程序

    %hermite.m %求埃尔米特多项式和误差估计的MATLAB主程序 %输入的量:X是n+1个节点(x_i,y_i)(i = 1,2, ... , n+1)横坐标向量,Y是纵坐标向量, %以f'(x ...

  7. 埃尔米特插值c语言编程,131张艳-埃尔米特(Hermite)插值逼近的C语言程序.doc

    PAGE PAGE 1 论文题目:埃尔米特(Hermite) 插值逼近的C语言程序 院 系: 数学科学学院 专 业: 数学与应用数学 姓 名: 张 艳 学 号: 指导教师: 侯 存 贵 完成时间: 2 ...

  8. 2021-07-21 分段三次Hermite插值及其与三次样条的比较

    Numpy数组自身加和与乘积运算 http://www.weixueyuan.net/a/794.html python-scipy -hermite插值,分段三次Hermite插值 import n ...

  9. 【经典】纪念米加艾尔·塔利维尔吉耶夫《春天的17个瞬间》音乐会[部分]

    米加艾尔·塔利维尔吉耶夫 他是俄罗斯音乐的代言人,他用烂漫的童心谱写出恒久的感动.他是影视音乐的大师,他用诗意的旋律勾勒出不凡的人生轨迹.音乐故事,精彩呈现<春天的瞬间>系列节目-- 有作 ...

最新文章

  1. [python教程入门学习]python学习笔记(CMD执行文件并传入参数)
  2. 嵌入式学习笔记之二(静态链接与动态链接)
  3. Bash : test 命令
  4. java怎么做沙子合并_dp之沙子合并 环形沙子合并 沙子合并加强 沙子三兄弟的故事...
  5. 1. Visio Web 形状 - 无法与 Web 服务器建立连接。请稍后重新进行搜索。处理方式...
  6. 离群值如何处理_有理处理离群值的局限性
  7. 银行死都不告诉你的10个秘密
  8. 数据时代总结思维导图模板分享及绘制技巧
  9. c# combobox 绑定枚举方式
  10. CSS样式表——列表与布局
  11. 利用PLC1200和elmo驱动器对maxon RE40电机的两种控制方式(PWM(PTO)或者模拟量控制)
  12. 理解collate Chinese_PRC_CI_AS ,请看实例:sql语句中如何识别字符串中的中文逗号的问题
  13. 企企通携手“浙江制造”品牌【安诺化学】,一站式采购管理助推企业数字化建设
  14. Silverlight 教程第二部分:使用布局管理 (木野狐译) 1
  15. 原创 | 机器学习数学推导与代码实现30讲.pdf
  16. Edgedetect 边沿检测(Verilog)
  17. 科研工具流1——Zotero管理文献
  18. AE按行政区范围加载图层数据(转载)
  19. 用Python和Pygame写游戏-从入门到精通(16)
  20. 联想服务器sr650硬件配置表,ThinkSystem SR650规格解读_联想 System x3650 M4_服务器x86服务器-中关村在线...

热门文章

  1. kali Linux隐藏IP教程,Kali Linux 设置动/静态IP地址以及修改DNS
  2. 推箱子游戏 java源代码_java推箱子游戏源代码(含推箱子的判断)
  3. 计算机二级的Word知识点,计算机二级word知识点「干货」
  4. 算法题:SOJ1092: 欧几里得算法
  5. 保险行业防范网络犯罪新思路
  6. 知识共享协议与版权声明
  7. Excel实现线性回归分析——高尔顿数据集、四重奏数据集
  8. 数据库设计的基本步骤
  9. 《开源软件开发导论》作业1
  10. docker load镜像报错:open /var/lib/docker/tmp/docker-import-525555606/repositories: no such file or direc