数值分析原理课程实验——拉格朗日(Lagrange)插值
拉格朗日(Lagrange)插值
方法概要
待求问题
1.拉格朗日插值多项式的次数n越大越好吗?
2.插值区间越小越好吗?
3.内插比外推更可靠吗?
程序流程
程序代码
/*Matlab函数
function Result = Lagrange(n, x_in, a, b, f)h = (b-a)/n;M = zeros(n+1, 2);i = 0;while i <= nxi = a+i*h;yi = subs(f, symvar(f), xi);M(i+1, 1) = xi;M(i+1, 2) = yi;i = i+1;endy = 0.0;k = 1;while k <= n+1l = 1.0;for j = 1:k-1l = l*(x_in - M(j, 1))/(M(k, 1) - M(j, 1));endfor j = k+1:n+1l = l*(x_in - M(j, 1))/(M(k, 1) - M(j, 1));endy = y + l*M(k, 2);k = k+1;endResult = [x_in, y];
end*//*C语言程序
#include <stdio.h>
#include <stdlib.h>
#include <math.h>#define N1 3 // n amount
#define N2 4 // x amount
#define N3 20 // n maxint Ns[N1] = {5, 10, 20};
double x[N2] = {-0.95, -0.05, 0.05, 0.95};
double l = -1.0;
double r = 1.0;double X(int k, int n) {double h = (r - l) / n;return l + k * h;
}double Y(double x) { return 1 / (1 + x * x); }int main() {for (int i = 0; i < N2; i++) printf("\tx=%.2lf", x[i]);printf("\n");for (int i = 0; i < N1; i++) {double a[N3 + 1], b[N3 + 1];int n = Ns[i];for (int k = 0; k <= n; k++) {a[k] = X(k, n); // xb[k] = Y(a[k]); // y}printf("n=%d", n);for (int p = 0; p < N2; p++) {double y = 0.0;for (int k = 0; k <= n; k++) {double l = 1.0;for (int j = 0; j <= n; j++) {if (j != k) l *= (x[p] - a[j]) / (a[k] - a[j]);}y += l * b[k];}printf("\t%.6lf", y);}printf("\n");}printf("Actual");for (int p = 0; p < N2; p++) printf("\t%.6lf", Y(x[p]));return 0;
}*/
运行结果
牛顿(Newton)迭代法,原文链接:
https://blog.csdn.net/KissMoon_/article/details/116277622
高斯(Gauss)列主元消去法,原文链接:
https://blog.csdn.net/KissMoon_/article/details/116278197
四阶龙格-库塔(Runge-Kutta)方法,原文链接:
https://blog.csdn.net/KissMoon_/article/details/116278567
Newton/Gauss/Lagrange/Runge-Kutta实验内容+方法指导+Matlab脚本+Matlab函数+Matlab运行报告+C程序+实验报告,一键下载:
https://download.csdn.net/download/KissMoon_/18244419
凉梦空间
欢迎你进入我的个人博客网站参观交流:https://www.liangmeng.xyz
数值分析原理课程实验——拉格朗日(Lagrange)插值相关推荐
- 数值分析原理课程实验——(高斯)Gauss列主元消去法
高斯(Gauss)列主元消去法 方法概要 待求问题 程序流程 程序代码 /*Matlab函数 function Result = Gauss(n, A, b)for k = 1:n-1max = ab ...
- 微机原理课程实验(十字路口红绿灯设计)
微机原理课程实验(十字路口红绿灯设计) 软件:protuse 8.4 具体要求 设计实现交通信号灯系统.设A车道与B车道交叉组成十字路口,A是主道,B是支道,直接对车辆进行交通管理,基本要求如下: ( ...
- 杨月江计算机导论答案,计算机导论课程实验教学大纲-计算机学院-华北科技学院.doc...
计算机导论课程实验教学大纲-计算机学院-华北科技学院.doc 华 北 科 技 学 院 2010级 实验教学大纲 网络工程系 目 录 TOC \o "1-1" \h \z \u HY ...
- 国内外编译原理课程实践教学现状分析
<自己动手写编译器.链接器> 冯向萍 (新疆农业大学计算机与信息工程学院) 摘 要:本文主要从教材的选择,实践项目的设置以及实践课程占总评成绩的比例等方面分析和比较了国内外多所高校编译 ...
- 计算机原理的教学论文,计算机原理课程教学浅谈
文/李继华 摘 要:计算机原理主要是以计算机本身的运行原理为研究对象的一门课程,学生在学习计算机原理这门课程时,主要是了解计算机系统,对计算机系统的组成形成一个清晰的认识,提高计算机系统的分析能力.然 ...
- 机器学习数据预处理之缺失值:插值法填充+ lagrange插值+拉格朗日插值
机器学习数据预处理之缺失值:插值法填充+ lagrange插值+拉格朗日插值 garbage in, garbage out. 没有高质量的数据,就没有高质量的数据挖掘结果,数据值缺失是数据分析中经常 ...
- 【数值分析】插值法:拉格朗日插值、牛顿插值
本科课程参见:<软件学院那些课> 拉格朗日插值法 (*以下定义选自维基百科) 算法流程图 算法代码 #include<iostream> #include<string& ...
- 拉格朗日(lagrange)插值(MATLAB实现)
Author:HanDi 上海某高校遥感专业 工科男 相信积微者速成,相信分享的力量 CSDN@这可真是难为我了 在学习气溶胶光学厚度(AOD)反演算法时,遇到了插值方法选择上的难题.对于AOD反演一 ...
- 计算机微机原理及接口技术实训室,《微机原理与接口技术》课程实验报告.doc...
<微机原理与接口技术>课程实验报告 实验一基本操作 一.实验目的 ? 1.熟悉Netlab MCS-51单片机实验系统的设置和使用方法 2.掌握基本MCS-51软件的编写.修改和编译的方法 ...
最新文章
- LeetCode简单题之作为子字符串出现在单词中的字符串数目
- ORA-10873解决办法
- 虚拟化数据中心服务器硬件配置建议
- 管能做暖气管道吗_这样的暖气管道施工,标准吗
- 计算机软件工作总结,计算机软件培训总结及小结-工作总结
- bzoj 2245 [SDOI2011]工作安排【最小费用最大流】
- 代码注释: (文字图案:HIRE)
- npm解决node-sass安装失败
- .net 序列化与反序列化
- python常见排序算法解析
- 最简单的基于FFmpeg的移动端例子:IOS 视频解码器
- 02-JAVA语法基础
- 【数学建模】2021年美赛C题思路(预测模型和图像识别)【含Matlab源码 245期】
- 如何在Python中使用生成器(Generate)和yield语句
- 8分钟教你学会局域网邮箱服务器搭建
- 边写SQL边学数据库入门实验2(持续更新)
- gnu/stubs-32.h
- matlab如何把正弦转化为余弦公式,高中正弦和余弦公式定理,正余弦转化公式
- 激光雷达Velodyne16配置及录制rosbag
- 《疯狂农场》带来的启示