目录

前言

一、拉格朗日(Lagrange)插值是什么?

二、matlab实现代码

1.线性插值:

2.抛物线插值:

3.拉格朗日(Lagrange)插值:

总结:


前言

本篇内容为个人所学知识分享


一、拉格朗日(Lagrange)插值是什么?

对于构造通过n+1个不同的节点的n次插值多项式,假定它满足条件

为了构造,我们先定义n次插值基函数。

若n次多项式在n+1个节点上满足条件

则称这n+1个n次多项式为节点上的n次插值基函数

使得插值多项式可以表示为

的定义,知

形如上式的插值多项式便称为拉格朗日(Lagrange)插值多项式。线性插值和抛物线插值只是拉格朗日插值的特殊情况。

拉格朗日(Lagrange)插值多项式的另外一种表示形式如下:

其中


二、matlab实现代码

1.线性插值:

即n=1的时候,一次的插值函数,即已知条件为两个插值节点及其值

function y0=Linear_interpolation(x,y,x0)
%功能:线性插值
%输入:x为插值节点,y为插值节点对应的值,x0为计算点
%输出:x0处的值
y0=y(1)+(y(2)-y(1))/(x(2)-x(1))*(x0-x(1));%点斜式
y0=y(1)*(x(2)-x0)/(x(2)-x(1))+y(2)*(x0-x(1))/(x(2)-x(1));%两点式
end

2.抛物线插值:

即n=2的时候,二次的插值函数,即已知条件为三个插值节点及其值

function y0=Parabolic_interpolation(x,y,x0)
%功能:抛物线插值
%输入:x为插值节点,y为插值节点对应的值,x0为计算点
%输出:x0处的值
y0=y(1)*(x0-x(2))*(x-x(3))/(x(1)-x(2))/(x(1)-x(3))+y(2)*(x0-x(1))*(x0-x(3)).../(x(2)-x(1))/(x(2)-x(3))+y(3)*(x0-x(1))*(x0-x(2))/(x(3)-x(1))/(x(3)-x(2));
end

3.拉格朗日(Lagrange)插值:

(一般情况)即已知条件为一串插值节点及其值

function y0 = Lagrange_interpolation(x,y,x0)
%功能:拉格朗日插值多项式求解
%输入:x为插值节点,y为插值节点对应的值,x0为计算点集
%输出:x0处值的集合y0
y0 = zeros(1,length(x0));
for i = 1:1:length(x0)  %循环作用:遍历x0X = ones(1,length(x));  for k = 1:1:length(x)%循环作用:(x0(i)-x(j))/(x(k)-x(j))的加和;for j= 1:1:length(x)%循环作用:(x0(i)-x(j))/(x(k)-x(j))的乘积if j ~= k  X(k) = X(k) * (x0(i)-x(j)) / (x(k)-x(j));endend y0(i) = y0(i) + X(k)*y(k);  end
end
end

总结

拉格朗日插值的插值对象为:一串不同的插值节点,且知道插值节点及其值。

代码部分由于线性插值和抛物线插值是拉格朗日的特殊情况,所以小编在编写的时候,为了让看起来没有重复,选择了直接按照运算形式编写代码。

数值分析·学习 | 拉格朗日插值法matlab实现相关推荐

  1. 拉格朗日插值法matlab上机,拉格朗日插值法使用MATLAB做的例题

    <拉格朗日插值法使用MATLAB做的例题>由会员分享,可在线阅读,更多相关<拉格朗日插值法使用MATLAB做的例题(2页珍藏版)>请在人人文库网上搜索. 1.一物体廓线数据如下 ...

  2. 【数值分析】拉格朗日插值法与牛顿插值法的C++实现

    数值分析--拉格朗日插值法与牛顿插值法的C++实现 文章目录 数值分析--拉格朗日插值法与牛顿插值法的C++实现 一.插值法 1.1 插值法定义 1.2 插值多项式唯一性定理 二.拉格朗日(Lagra ...

  3. 【数值分析】拉格朗日插值法

    在数值分析中,拉格朗日插值法是以法国十八世纪数学家约瑟夫·拉格朗日命名的一种多项式插值方法.许多实际问题中都用函数来表示某种内在联系或规律,而不少函数都只能通过实验和观测来了解.如对实践中的某个物理量 ...

  4. 数值分析1_拉格朗日插值法牛顿插值法

    实验名称 拉格朗日插值法以及牛顿插值法的实现 实验要求 实现拉格朗日插值        验证随着插值结点的增多插值曲线的变化情况        实现牛顿插值,显示差商结果         比较拉格朗日 ...

  5. 拉格朗日插值法MATLAB实现(附代码、实例、详解)

    第一部分:问题分析 (1)实验题目:拉格朗日插值算法 具体实验要求:要求学生运用拉格朗日插值算法通过给定的平面上的n个数据点,计算拉格朗日多项式Pn(x)的值,并将其作为实际函数f(x)的估计值.用m ...

  6. 2021-01-07 matlab数值分析  插值法 拉格朗日插值法 牛顿插值法

    matlab数值分析  插值法 1 拉格朗日插值法 function yh=lagrange(x,y,xh) n=length(x); m=length(xh); yh=zeros(1,m); for ...

  7. 【数学建模笔记】【第三讲】拉格朗日插值法,牛顿插值法,分段三次埃尔米特插值法及其MATLAB实践

    温馨提示:本文共有3748字,阅读并理解全文大概需要15-20分钟 插值算法 一.插值法的定义 1.插值函数一共有三种: 2.多项式插值法原理 3.分段插值法原理: 4.具体如何求插值函数呢? (1) ...

  8. rstudio拉格朗日插值法_拉格朗日插值法学习笔记

    拉格朗日插值法是一个根据点对求回原函数的算法,原理挺好懂的. 原理和优化方法上面的大佬都讲得很好. 其实主要就是这个式子: 然后暴力算这个式子的话是每求一项f(k)的时间复杂度都是n^2. 这个时间很 ...

  9. 拉格朗日插值法学习笔记

    文章目录 STEP1 问题引入 STEP2 拉格朗日插值公式 存在性 唯一性 代码模板 STEP3 算法优化 重心拉格朗日插值 xxx连续取值的情况 STEP4 经典例题 The Sum of the ...

最新文章

  1. ini配置文件的读取
  2. 30、自定义gridview
  3. Yandex.Algorithm 2011 Round 2 D. Powerful array 莫队
  4. bin文件如何编辑_如何为高通固件创建rawprogram0和patch0文件
  5. edge浏览器怎么恢复默认设置 edge恢复默认设置方法
  6. mysql 当前timestamp_MySQL表结构使用timestamp以自动获取当前时间
  7. 画一个空心圆_圆形在PPT中的6大妙用,每一个都能瞬间提升PPT的逼格!
  8. 虚拟环境virtualenv
  9. PHP文件中定义加载资源文件
  10. [渝粤教育] 南京师范大学 会计学基础 参考 资料
  11. for能否作为matlab的变量名,matlab中for语句用法
  12. python编程加减法_python编程题关于二进制加减法运算解析
  13. tumblr android app,6 Best Tumblr Apps for Android and iOS (2018)
  14. json-lib将xml转json报错java.lang.NoClassDefFoundError: nu/xom/ParentNode
  15. 26个字母的html代码多少,标准的26个字母的读法 二十六个汉语拼音字母怎么读才算正确...
  16. C语言学习之路-由浅入深(快速掌握c基础)
  17. AI科普(一):什么是人工智能?
  18. 关于python数字的一种下划线奇怪写法
  19. 一阶电路实验报告心得_rc一阶电路的响应测试心得体会
  20. Kubernetes实战吴龙辉

热门文章

  1. Android中 .stub类的使用
  2. Linux常用命令——mailq命令
  3. 从微软官网下载VS离线安装包的方法VS2017,VS2019
  4. 【顺序表】顺序表的就地逆置
  5. AR模型参数估计、Y-W方程、L-D算法原理部分
  6. 用keil语言定义c51,51单片机Keil C51的使用(C语言)
  7. 关于java字符流Reader.read()方法的个人理解
  8. VSCode 如何设置启动时打开上次关闭时在编辑的文件
  9. Staged Event Driven Architecture (SEDA) 介绍
  10. 学习总结和方法经验一