插值方法: 拉格朗日插值--逐步插值的自适应算法
插值方法: 拉格朗日插值--逐步插值的自适应算法
1.问题描述
称为插值节点,所要插值的点x称插值点。
插值计算的目的在于,通过尽可能简便的方法,利用所给数据表加工出插值点x上具有足够精度的插值结果y.
在这种意义,插值过程是个数据加工的过程。
2.理论与方法
多项式的系数与所给的数据点并没有直接的联系,所以我们考虑增加一个多项式的基函数会不会更好,例如,这里
这样一个表达式是很容易进行操作的,对于不同点或插值的公式。
这样一个多项式基函数就是通过Largrange插值构造的,对于n阶多项式满足
Divided differences and Newton’s form
We have seen thestandard monomial basis , This has led to a relativelyinferior procedure for constructing p= but an easy procedure for evaluating at a given argument x , On the other hand,with the Lagrangepolynomial basis
3.算法设计
根据给定的数据表(xi,yi),i=0,1,...,n及插值点x,根据公式求得插值结果y
在实际计算时可以这样设计计算流程。依与插值点x的距离,事先由近及远顺序排列插值节点x0,x1,...,xn然后逐行生成逐步插值表,每增添一行引进一个新的节点,这一过程直到相邻的两个对角线元素的偏差|Yi,i+1 - Yi-1,i|满足精度要求为止。这就是逐步插值的自适应法。
计算程序:
依与插值点x的距离,事先由近及远地顺序排列插值节点x0,x1,...,xn
逐行生成插值表 对 i=0,1,...,n 计算
检查计算误差 对给定精度e,当|Yi,i+1 - Yi-1,i|< e计算终止,并输出Yi,i+1作为插值结果。
自然停机 当i=n时输出Yn-1,n作为插值结果。
4.案例分析
Example1:
The population in millions of the United States from 1920 to2000 can be tabulated as following
Date |
1920 |
1930 |
1940 |
1950 |
1960 |
1970 |
1980 |
1990 |
2000 |
|
Population |
106.46 |
123.08 |
132.12 |
152.27 |
180.67 |
205.05 |
227.23 |
249.46 |
281.42 |
using first-, second-through senventh-order interpolating polynomials to predict the population in2000 based on the most recent data.
拉格朗日多项式:
5.代码
void _3()
{double p[8];double x[8] = { 1920,1930,1940,1950,1960,1970,1980,1990 };double y[8] = { 106.46,123.08,132.12,152.27,180.67,205.05,227.23,249.46 };double w[8][8], q[8];for (int i = 1; i < 8; i++){for (int j = 0; j <= i; j++){w[i][j] = 1;for (int k = 0; k <= i; k++){if (j != k) w[i][j] *= (x[j] - x[k]);}w[i][j] = 1 / w[i][j];// cout << w[i][j] << endl;}// cout << endl;}//cout << endl;double xx = 2000;for (int i = 1; i < 8; i++){q[i] = 1;for (int j = 0; j <= i; j++){q[i] *= (xx - x[j]);}// cout << q[i] << endl;}//cout << endl;for (int i = 1; i < 8; i++){double temp = 0;for (int j = 0; j <= i; j++){temp += (w[i][j] * y[j]) / (xx - x[j]);}p[i] = q[i] * temp;cout << setw(2) << i << "阶插值结果: " << p[i] << endl;}
}
End
插值方法: 拉格朗日插值--逐步插值的自适应算法相关推荐
- 函数插值的python实现——拉格朗日、牛顿插值
函数插值的python实现--拉格朗日.牛顿插值 1. 拉格朗日(Larange)插值 实现代码 2. 牛顿(Larange)插值 2.1 牛顿插值多项式的基本形式 2.2 牛顿均差插值多项式 (1) ...
- 6、计算机图形学——着色频率、插值与插值的矫正
一.着色频率 通过光照模型可知,最终的光照结果和光照点的法线向量关系很大.所以,根据不同的法线向量,就有不同的着色方法.在图形学中,法线分为:面法线.顶点法线和像素法线.光照和这三种法线相互作用,就有 ...
- 域对抗自适应算法的设计、不足与改进(Domain Adversarial Learning)
©作者 | 江俊广 单位 | 清华大学 研究方向 | 迁移学习 本文主要介绍域自适应(Domain Adaptation)中的对抗域自适应方法(Domain Adversarial Learning) ...
- 陕西中际现代:基于自适应算法的PLC滴灌控制系统
基于自适应算法的PLC滴灌控制系统 陕西中际现代包装科技有限公司滴灌部 1.介绍 水资源正在成为一种珍贵的资源.城镇的市民使用成千上万立方的水来浇灌花园和绿地.他们依赖于使用固定灌溉计划的控制器.而这 ...
- 基于自适应算法和增量式PID算法的模拟直升飞机控制系统
基于自适应算法和增量式PID算法的模拟直升飞机控制系统 文章目录 基于自适应算法和增量式PID算法的模拟直升飞机控制系统 控制系统硬件 单片机系统 传感器系统介绍 直升机模拟系统介绍 系统模块介绍 A ...
- webrtc中的带宽自适应算法
webrtc中的带宽自适应算法分为两种: 1, 发端带宽控制, 原理是由rtcp中的丢包统计来动态的增加或减少带宽,在减少带宽时使用TFRC算法来增加平滑度. 2, 收端带宽估算, 原理是并由收到rt ...
- CVF2020邻域自适应/语义分割:FDA: Fourier Domain Adaptation for Semantic SegmentationFDA:用于语义分割的傅立叶域自适应算法
邻域自适应/语义分割:FDA: Fourier Domain Adaptation for Semantic Segmentation FDA:用于语义分割的傅立叶域自适应算法 0.摘要 1.概述 1 ...
- C#,图像二值化(05)——全局阈值的联高自适应算法(Legal Self-Adaptive Thresholding)及其源代码
阈值的选择当然希望智能.简单一些.应该能应付一般的图片. What is Binarization? Binarization is the process of transforming data ...
- 立方卷积插值 matlab,matlab旋转实现(最近邻值,双线性,三次卷积插值实现插值)
数字图像处理,使用matlab实现旋转(最近邻值,双线性,三次卷积插值实现插值) 对图像进行旋转,使用最近邻插值法,双线性插值,三次卷积插值三种方法进行插值. 源码: clc;clear all;cl ...
- 关于Gmsh使用Full_Blosson三角形合并为全四边形以及波前法、Delaunay和自适应算法测试
本文只要做了一些测试,并不涉及代码编写,基于前面的文章的一些代码下,重新编译了Gmsh with opencascade,这次勾选了BLOSSON选项,目的是为了使三角形能全部合并为四边形,同时对gm ...
最新文章
- 熬了一个通宵,终于把 7 千万个 Key 删完了
- python 获取当天和前几天时间数据(亲测)
- git撤销commit 并保存之前的修改
- android app逆向分析,如何开始对Android应用的逆向分析?
- JQ之路——layer第三方弹窗
- 第八章:在Spark集群上掌握比较重要的图操作之Property Operators(1)
- 中国象棋将帅问题java_编程之美读书笔记1.2——中国象棋将帅问题
- scla-基础-函数-元组(0)
- 操作系统知识--线程
- python培训班靠谱吗-什么样的python培训机构靠谱?
- Windows下对文件做MD5校验
- 【方向盘】Spring Boot 2.5.0正式发布,环境变量可指定前缀的功能很赞
- 个税服务器系统繁忙,2021个人所得税系统异常进不去怎么办?系统繁忙请稍后再试怎么回事...
- Unity Shader数学基础 -- Shader入门精要学习(3)
- 基于sql2014+VS2015的报刊管理系统报告
- 测开之路三十三:Flask实现扎金花游戏
- php 2038,php实现兼容2038年后Unix时间戳转换函数
- 学3d建模和计算机编程,超好用的3D建模软件全科普,想要学好建模的你千万别错过!...
- 人工智能-高等数学之导数篇
- 1214. 波动数列