拉格朗日插值函数计算机实现流程图,拉格朗日插值实验报告.doc

实验名称: 实验一 拉格朗日插值

引言

我们在生产生活中常常会遇到这样的问题:某个实际问题中,函数f(x)在区间[a,b]上存在且连续,但找到其表达式,只能通过实验和观测得到有限点上的函数表。有些情况虽然可以写出表达式,但结构复杂,使用不方便。所以简单函数P(x)作为f(x)的近似值。插值法是解决此类问题的一种方法。

实验目的和要求

运用Matlab编写m文件,要求一次性输入整张函数表,并利用计算机选择在插值计算中所需的节点。分别通过分段线性插值、分段二次插值和全区间上拉格朗日插值计算f(0.15),f(0.31),f(0.47)的近似值。f(x)0.398940.396950.391420.381380.368120.35206算法原理与流程图

(1)原理

设函数y=在插值区间[a,b]上连续,且在n+1个不同的插值节点a≤x0,x1,…,xn≤b上分别取值y0,y1,…,yn。目的是要在一个性质优良、便于计算的函数类Φ中,求一简单函数P(x),P(xi)=yi(i=0,1,…,n),而在其他点x≠xi上,作为f(x)近似值P(x)的方法称为插值法。在本实验中,采用拉格朗日插值法。

①分段低次插值

当给定了n+1个点x0

这种分段低次插值叫分段线性插值

类似地,我们可以选取距离x最近的三个节点xi-1,xi与xi+1,然后进行二次插值,即得

这种分段低次插值叫分段二次插值②全区间上拉格朗日插

对节点xi(i=0,1,…,n)中任一点xk(0≤k≤n),作一n次多项式lk(x),使它在该点上的取值为1,在其余点xi(i=0,1,…,k-1,k+1,…,n)上取值为零。对应于每一节点xk(k=0,1,…,n),都能写出一个满足此条件的多项式,这样写出n+1个多项式l0(x),l1(x),…,ln(x);

由条件可得

于是我们可以得出如下的拉格朗日n次插值多项式(对于全区间上的插值,n取函数表的长度)

流程图

分段线性插值分段二次插值 全区间拉格朗日插值

程序代码及注释

1、分段线性插值

%分段线性插值

function y=piece_linear(x0,y0,x)

% x0,y0为已知点,x为待求点

n=length(x0);p=length(y0);m=length(x);

% n,p,m分别为x0,y0,x长度

if n~=p

fprintf('Error! Please input again!\n');

% x0和y0长度不等时,报错

else

for i=1:m

z=x(i);

sum=0.0;

l=0;

%给l赋初值,根据x的值确定l

if zx0(n)

fprintf('Error!x(%d) is out of range!\n',i);

break;

end

%当插值点超出范围时,报错

for j=2:n

if z

l=j;

end

if l~=0

break;

end

end

%一旦l有非零值,则终止循环,选出合适的l

for k=l-1:l

a=1.0;

for s=l-1:l

if s~=k

a=a*(z-x0(s))/(x0(k)-x0(s));

end

end

sum=sum+y0(k)*a;

end

y(i)=sum;

fprintf('y(%d)=%f\nx1=%.3f y1=%.5f,x2=%.3f y2=%.5f\n\n',i,y(i),x0(l-1),y0(l-1),x0(l),y0(l));

%输出插值结果和所需节点

end

end

end

2、分段二次插值

%分段二次插值

function y=piece_square(x0,y0,x)

% x0,y0为已知点,x为待求点

n=length(x0);p=length(y0);m=length(x);

% n,p,m分别为x0,y0,x长度

if n~=p

fprintf('Error! Please input again!\n');

% x0和

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/489333.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

整个领域没了!学术界有史以来最大的丑闻

来源:中大科技处10月15日,学术界发生了一件大事。哈佛终身教授学术造假,31篇文献被撤,无数研究化为泡影……哈佛一次性从各类顶尖期刊上撤稿了31篇论文,整个心肌干细胞相关的研究被认定为“从一开始就基于欺诈性数据”…

布隆过滤器误判怎么办为什么会_最牛一篇布隆过滤器详解,布隆过滤器使用原理...

前言我们之前讲了Redis的缓存雪崩、穿透、击穿。在文章里我们说了解决缓存穿透的办法之一,就是布隆过滤器,但是上次并没有讲如何使用布隆过滤器。作为暖男的老哥,给你们补上,请叫我IT老暖男。什么是布隆过滤器布隆过滤器(Bloom Fi…

thinkPHP-空操作

空操作 当访问的方法不存在时&#xff0c;可以定义一个empty方法来避免空操作 function _empty(){echo "网页不存在&#xff0c;请检查地址信息";} 这样当访问不存在的方法时就会显示以上信息 当访问的控制器不存在时&#xff0c;可以定义一个空操作器 <?php nam…

python3 面向对象_Python3 面向对象

Python和C都是一门面向对象的语言&#xff0c; 面向对象技术简介 类(Class):用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。比如 f file()##创建了一个类(file())的对象f 类变量&#xff1a;类变量在整个实例的对象…

口腔ct重建服务器原理,牙科CT是什么?牙科CT的原理及优势介绍

原标题&#xff1a;牙科CT是什么&#xff1f;牙科CT的原理及优势介绍牙科CT是什么&#xff1f;牙科CT&#xff0c;又称口腔CT&#xff0c;是一种新型牙科类仪器&#xff0c;它可以从三维角度对口腔部组织情况进行扫描检查。牙科CT在业界被誉为神奇的“慧眼”&#xff0c;它犹如…

机器学习奠基人Michael Jordan:下代技术是融合经济学,解读2项重要进展

来源&#xff1a; 北京智源人工智能研究院2019年11月1日北京智源大会全体大会及闭幕式上&#xff0c;被誉为“机器学习之父”的加州大学伯克利教授、智源研究院学术顾问委员会委员 Michael I.Jordan 做了题为《决策与情境&#xff1a;基于梯度的博弈均衡求解方法》&#xff08;…

matlab 带有下标的赋值维度不匹配_远见另类资产管理体系下的核心系统搭建

另类资产管理体系下的信息化建设&#xff0c;或许是小众领域中的更小众话题&#xff0c;但仍值得讨论。很多基金公司、投资公司或资产管理公司都搭建了各种大大小小的应用系统&#xff0c;如OA系统、财务系统、CRM系统等&#xff0c;但对于上系统的价值&#xff0c;不仅很难量化…

cfree运行程序错误的原因_Python入门教程 | 第 8 章 错误、调试和测试

第八章 错误、调试和测试在程序运行过程中&#xff0c;总会遇到各种各样的错误。有的错误是程序编写有问题造成的&#xff0c;比如本来应该输出整数结果输出了字符串&#xff0c;这种错误我们通常称之为bug&#xff0c;bug是必须修复的。有的错误是用户输入造成的&#xff0c;比…

python更新后yum问题

python更新后yum问题 How to switch between Python versions on Fedora Linux Currently, the default python version on Fedora Linux is Python 2. Later Fedora Linux release 22 will ship with the Python 3 as a default version. In this config you will learn how t…

我的世界服务器物品id错误,我的世界错误代码,怎么弄

我的世界错误代码&#xff0c;怎么弄0xu1125yuan2017.07.24浏览323次分享举报1.Minecraft:[16:05:37][Clientthread/FATAL][NotEnoughItemsFingerprintVerification]:ThefingerprintformodNotEnoughItemsisinvalid!Expected:f1850c39b2516232a2108a7bd84d1cb5df9... 1.Minecraf…

友友球捕获率_神奇宝贝球内部秘密公开!大师球原来是这样达到100%捕获率的...

要想获得神奇宝贝&#xff0c;首先就要用精灵球&#xff0c;精灵球的作用是捕捉或者携带宝可梦&#xff0c;不同种类的精灵球拥有不同的特殊效果。一名训练家最多只能携带6枚装有宝可梦的精灵球&#xff0c;空的精灵球则没有携带数量的限制。目前为止&#xff0c;已经有27种不同…

今日头条CEO朱文佳:新一代搜索引擎已经来了

来源&#xff1a;今日头条11月27日&#xff0c;今日头条CEO朱文佳在36kr wise大会上谈及头条搜索。在他看来&#xff0c;要做好搜索&#xff0c;有三件事最重要。首先是技术&#xff0c;技术决定搜索的体验&#xff1b;其次是内容&#xff0c;内容是搜索的根本&#xff1b;最后…

javascript事件监听与事件委托

事件监听与事件委托 在js中&#xff0c;常用到element.addEventListener()来进行事件的监听。但是当页面中存在大量需要绑定事件的元素时&#xff0c;这种方式可能会带来性能影响。此时&#xff0c;我们可以用事件委托的方式来进行事件的监听。 每个事件都经历三个阶段 捕获到达…

串口打印怎么使用】_爱普生打印机怎么使用 爱普生打印机使用方法【详解】...

市面上的打印机品牌有很多&#xff0c;其中就有爱普生打印机&#xff0c;这个品牌的打印机是在上个世纪的四十年代成立的&#xff0c;并且爱普生这款打印机逐渐深入我们的生活&#xff0c;一般我们很多都会使用爱普生打印机来打印资料或者是下载各种工作材料&#xff0c;那么你…

中科院大学计算机研究生考试大纲,中国科学院大学《计算机原理》2019年硕士研究生入学考试大纲...

(二)计算机组成原理 (50分)1、计算机系统概论(1)计算机的分类。(2)计算机的硬件。(3)计算机的软件。(4)计算机系统的层次结构。2、 运算方法和运算器(1)数据与文字的表示方法。(2)定点加法、减法运算。(3)定点乘法运算。(4)定点除法运算。(5)定点运算器的组成。(6)浮点运算方法…

linux 测试cpu计算圆周率_Linux下测试CPU性能

一、安装stress服务2、解压tar xvf stress_1.0.1.orig.tar.gz3、进入解压目录执行./configure4、make5、make check6、make install7、make clean二、安装sysstat服务2、解压tar xvf sysstat-11.5.6.tar.gz3、进入解压目录执行./configure4、make & make install三、测试C…

日益谨慎的谷歌AI,会在自我限制中越走越慢吗?

来源&#xff1a;wired为了防止技术被滥用&#xff0c;谷歌对新推出的人脸识别服务进行了限制&#xff0c;但这种限制有时候反而会让竞争对手抢得市场先机。谷歌之所以成为今天的谷歌&#xff0c;是因为它不断创造先进的新技术&#xff0c;并将这些技术向所有人开放。大型企业和…

用jsp实现右导航窗格_手机导航如何投放到汽车中控屏?建议用这2种办法,轻松实现同屏...

对于我们许多的司机来说&#xff0c;虽然车上有车载导航&#xff0c;但是出于个人习惯&#xff0c;我们很多人还是习惯用手机导航&#xff0c;由于手机导航它的定位较为精准&#xff0c;而且使用起来比较方便&#xff0c;所以说更受司机朋友的青睐&#xff0c;但是有一个毛病就…

MFC编程入门之十五(对话框:一般属性页对话框的创建及显示)

属性页对话框包括向导对话框和一般属性页对话框两类&#xff0c;上一节讲了如何创建并显示向导对话框&#xff0c;本节将继续介绍一般属性页对话框的创建和显示。 实际上&#xff0c;一般属性页对话框的创建和显示过程和向导对话框是很类似的。将上一节中的向导对话框进行少量修…

javascript 等待指定时间_javascript的单线程和任务队列

一、JavaScript为什么设计为单线程&#xff1f;JavaScript语言的一大特点就是单线程&#xff0c;换言之就是同一个时间只能做一件事。其他任务都必须在后面排队等待。for(var i 0; i < 5; i) {console.log(i); } console.log(end);上面的代码&#xff0c;只有for循环执行完…