数值计算方法-拉格朗日插值法

要求:
编写拉格朗日插值函数,输入为(x,f,order1)
其中x代表节点数据,为n*2矩阵
f代表是否分段
oreder1:若分段,oreder1代表函数阶次,只能为1或者2
若不分段,则函数阶次为n-1
必须严格按照要求编写,画出插值函数图。
理论:
对于现在的许多实际问题来说,我们并不知道 f(x) 的具体形式,所对应的函数值可能是由测量仪器或其他设备中直接读出来的, f(x) 只是一个数学概念意义下的函数。(比如:图像的方法处理,天气预报,机床加工等方面)解答这类问题的方法就是插值方法。
泰勒插值要求提供 f(x) 在点 x 0 处的各阶导数值,这项要求很苛刻,函数 f(x) 的表达式必须相当简单才行。如果仅仅给出一系列节点上的函数值 f(x i ) = y i (i=0,1,2 … ,n), 则插值问题可表述如下:求作 n 次多项式 (x) ,使满足条件 (x)= , i = 0 ,1 ,…,n 这就是所谓拉格朗日( Lagrange)插值。
设函数 y=f(x) 在插值区间[a,b]上连续,且在 n+1 个不同的插值节点 a≤,…, ≤b 上分别取值 , ,…, 。目的是要在一个性质优良、便于计算的插值函数类 Φ 中,求一简单函数 P (x) ,满足插值条件 P ()=y i (i=0,1,…,n) ,而在其他点 x≠上,作为 f (x) 近似值。求插值函数 P (x) 的方法称为插值法。在本实验中,采用拉格朗日插值法。
当给定n+1个点<<…< 上的函数值 , ,…, 后,若要计算 x≠ 处函数值 f (x) 的近似值,可先选取两个节点 -1 与 使 x∈[-1 , ] ,然后在小区间 [-1 , ] 上作线性插值,即得
在这里插入图片描述
这种分段低次插值叫分段线性插值,又称折线插值。
类似地,我们可以 选取距离x最近的三个节点-1 ,与+1 ,然后进行二次插值,即得
在这里插入图片描述
这种分段低次插值叫分段二次插值,又称分段抛物线插值。
matlab代码:

function u = lagrange(x,f,order1)
syms fx; %fx表示需要估算的f(x)的x的值
[m,n] = size(x); 
P = 0;
t=x(1,1):0.1:x(m,1); 

if f==0 %不分段
    for i = 1 : m
        L1 = 1;
        for j = 1 :
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值