标题:Lagrange插值多项式算法

一.公式介绍

Lagrange多项式公式:
L[n](u) =  累加符号 l[i](u) * y[i] {i = 0,1,...,n}Lagrange因子公式 :l[i](u) = 累乘符号(u-x[j])/(x[i]-x[j]) {i != j , j = 0,1...,n}L[n](u)称为f(u)的n次多项式插值的Lagrange公式
l[i](u)称为n次多项式插值问题的基函数(Lagrange因子)

二.构造插值函数的目的以及优缺点

目的:由已知一些点的坐标,构造出一个符合这些坐标的函数,并能推测出未知坐标
的函数值。
优点:公式的形式对称,结构紧凑,容易编程,便于理论分析和许多数值计算公式的
推导。
缺点:没有承袭性,增加新的节点时,所有的Lagrange因子必须重新计算,造成计算
的浪费。注:至少需要n+1个坐标点才能构造出L[n](x),或者说L[n](x)至少有n+1个根。

三.算法流程


注意:下述代码实现中的 i 与 j 互换

四.Lagrange插值多项式算法c++代码实现

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;template <typename T>
void input(T n){//输入每个点的坐标 double x[n];double y[n];for(int i = 0 ; i < n ; i ++){cout<<"请输入第"<<i+1<<"个点的坐标:"; cin>>x[i]>>y[i];}T u;cout<<"请输入插值点横坐标:"; cin>>u;//输入插值点横坐标 double v = 0;//Lagrange是一个叠加的过程,所以令横坐标所对应的函数初始值(纵坐标)为 0 double l[n];//n-1次多项式插值问题的基函数(Lagrange因子)fill(l, l + n, 1);//Lagrange因子是叠乘的过程,所有的因子赋值为1for(int i = 0 ; i < n ; i ++){for(int j = 0 ; j < n ; j ++){if(i != j){l[i] *= (u - x[j])/(x[i] - x[j]);}}v = v + l[i]*y[i];//求出l[k]的同时,直接叠加,不必再开新的循环    }cout<<"通过插值公式求得的u所对应的函数值V为:"<<v;
}//通过已知的坐标点,构造Lagrange插值函数,计算插值点 u 的函数坐标值 v
int main(){ int n;//n 个坐标点(根)确定一个 f(x) 的 n-1 次多项式插值的Lagrange公式 cout<<"请输入坐标点的个数:";cin>>n;input(n);return 0;
}

Lagrange插值多项式算法相关推荐

  1. Matlab实现Lagrange插值多项式

    实验要求 通过n+1个节点的次数不超过n的Lagrange插值多项式为: 其中,Lagrange插值基函数 , k=0,1,-,n. x 0 10 20 30 40 50 60 70 80 90 10 ...

  2. 拉格朗日Lagrange插值多项式

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 本文转载 ...

  3. matlab的数值计算方法,数值计算方法中的一些常用算法的Matlab源码

    数值计算方法中的一些常用算法的Matlab源码,这些程序都是原创,传上来仅供大家参考,不足之处请大家指正,切勿做其它用途-- 说明:这些程序都是脚本函数,不可直接运行,需要创建函数m文件,保存时文件名 ...

  4. matlab用牛顿差值计算三次差值多项式,计算方法用Newton插值多项式求函数的近似值.docx...

    计算方法用Newton插值多项式求函数的近似值 计算方法课程设计题 目: 用Newton插值多项式 处理磁化曲线学 院: 理学院班 级: 学 生 姓 名: 学 生 学 号: 指 导 教 师: 2017 ...

  5. 【数学建模】11 数学建模常用算法和计算机辅助软件

    目录 1 常用数值计算方法 2 现代智能计算方法 2.1 分类 2.2 遗传算法 2.3 神经网络 3 科技计算软件 4 习题 1 常用数值计算方法 (1)解线性方程组的直接方法 • 高斯消去法(Ga ...

  6. 求拉格朗日多项式matlab,拉格朗日插值多项式积分求圆周率近似Matlab实现

    Lagrange 插值多项式积分求圆周率近似 摘要: 公式1:y1=4/(1+x^2) 公式2:y2=4*sqrt(1-x^2) 分别对公式1.公式2求其拉格朗日插值多项式,再对其求0-1上的定积分来 ...

  7. 数值分析上机题matlab线性方程组,数值分析上机实验报告 - 线性方程组部分实验题1...

    s=A(i,(i+1):n)*x((i+1):n,1); else s=0; end x(i,1)=(b(i)-s)/A(i,i);end %Cholosky分解方法***************** ...

  8. matlab全域基函数,多项式函数插值:全域多项式插值(一)单项式基插值、拉格朗日插值、牛顿插值 [MATLAB]...

    全域多项式插值指的是在整个插值区域内形成一个多项式函数作为插值函数.关于多项式插值的基本知识,见"计算基本理论". 在单项式基插值和牛顿插值形成的表达式中,求该表达式在某一点处的值 ...

  9. matlab实现盖尔圆,[理学]数值分析习题解答.doc

    [理学]数值分析习题解答 6.(1)设,试求 (2)设,试求 解 : 4.设, (1)试对进行PLU分解:: (2)根据PLU分解求解. 解 (1) (2) 8.分别用Householder变换法和M ...

最新文章

  1. vlc学习计划(4)--在EMACS中使用GDB调试
  2. Java知识点26——模拟12306买票过程、模拟龟兔赛跑的过程、静态代理例子
  3. groovy学习(一)
  4. Exercising Walk CodeForces - 1332A(思维)
  5. 入职阿里啦!docker-e命令参数
  6. python中break与continue使用
  7. 天天说常识推理,究竟常识是什么?
  8. SaasSaaS架构设计之构建Multi-Tenant应用
  9. 颜色空间——Gamma与线性颜色空间
  10. Java日常干货-观察者模式
  11. 怎样打开.jar格式文件,怎样运行.jar格式文件
  12. stm32单片机相同系列型号代码移植
  13. CT值、线性衰减系数与质量衰减系数的关系
  14. binomial检验_SPSS中八类常用非参数检验之二:二项分布(Binomial)检验
  15. 2022-05-08 Unity核心5——Tilemap
  16. 加装ssd固态硬盘基本要求
  17. python画太极图
  18. 微信小程序父子页面间得数据传递(对象或者数组)
  19. 移动宽带客户测试软件,华为移动宽带终端检测工具(Mobile Doctor)
  20. 恢复MySQL 表结构 和数据

热门文章

  1. 案例:用逻辑回归制作评分卡
  2. JavaWeb 项目案例(新能源汽车动力电池信息)
  3. 壹佰利—通联信用作为吉林省首家获得人民银行颁发的企业征信备案牌照,开始为全省人民服务!
  4. 莫道君行早更有早来人(一)黄页
  5. 瑞星的彻底批判,一只老甲鱼的末路狂奔
  6. 本地怎么画最简单的监控图
  7. 快速入门:LINUX基础 ——教你使用 linux 操作
  8. Vue 生命周期函数
  9. CentOS 7 Nginx 控制脚本
  10. 资产监测设备研发中,遇到的VCC、VDD、VEE、VSS都是什么意思?