matlab展示龙格现象

在这里插入图片描述

为了展示龙格现象,它使用拉格朗日插值多项式,展示了随着插值点数目的增加,插值多项式在区间端点附近震荡的现象。

重新编写的 MATLAB 代码:

% 定义目标函数
f = @(x) 1 ./ (1 +  x.^2);

% 设置插值区间
x_interval = [-5, 5];  % 插值区间
x_fine = linspace(x_interval(1), x_interval(2), 1000);  % 用于绘制精细图像的点

% 生成插值的真实值
y_fine = f(x_fine);

% 设置不同的插值节点数目
node_counts = [5, 8, 12];

% 绘制真实函数图像
figure;
hold on;
plot(x_fine, y_fine, 'k', 'LineWidth', 2);  % 真实函数

colors = {'r', 'g', 'b'};  % 插值结果的颜色

% 对不同的节点数目进行插值并绘制
for k = 1:length(node_counts)
    % 生成均匀分布的插值节点
    x_nodes = linspace(x_interval(1), x_interval(2), node_counts(k));
    y_nodes = f(x_nodes);

    % 拉格朗日插值
    y_interp = lagrange_interpolation(x_nodes, y_nodes, x_fine);

    % 绘制插值结果
    plot(x_fine, y_interp, 'Color', colors{k}, 'LineWidth', 1.5);
end

% 添加标签和图例
legend('真实函数', '5节点插值', '8节点插值', '12节点插值');
title('龙格现象示例');
xlabel('x');
ylabel('f(x)');
grid on;
hold off;


% 
function y_interp = lagrange_interpolation(x_nodes, y_nodes, x_interp)

n = length(x_nodes);
xi=x_interp;
y_interp=zeros(size(xi)); 
for i = 1:n
     L = ones(size(xi));%注意L的位置
    for j = 1:n
        if i ~= j
            L= L.* (xi - x_nodes(j)) / (x_nodes(i) - x_nodes(j));
        end
    end
   y_interp =y_interp + y_nodes(i)*L;
end
end
% 拉格朗日插值函数
% function y_interp = lagrange_interpolation(x_nodes, y_nodes, x_interp)
%     n = length(x_nodes);
%     y_interp = zeros(size(x_interp));
%     
%     for i = 1:n
%         L = ones(size(x_interp));  % 初始化L为1
%         for j = 1:n
%             if j ~= i
%                 L = L .* (x_interp - x_nodes(j)) / (x_nodes(i) - x_nodes(j));
%             end
%         end
%         y_interp = y_interp + y_nodes(i) * L;
%     end
% end

取五个点,八个点,十二个点如图:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

分段插值多项式

我们通过对拉格朗日插值和牛顿插值多项式分析发现,当插值次数增高时会发生龙格现象,因此我们用分段插值多项式,尽管分段插值多项式再精度上有所提高,并且回避了龙格现象,但是它也带来了新的问题,就是在整个区间上不可导。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

浅谈云计算19 | OpenStack管理模块 (上)

OpenStack管理模块(上) 一、操作界面管理架构二、认证管理2.1 定义与作用2.2 认证原理与流程2.2.1 认证机制原理2.2.2 用户认证流程 三、镜像管理3.1 定义与功能3.2 镜像服务架构3.3 工作原理与流程3.3.1 镜像存储原理3.3.2 镜像检索流程 四、计算管理4.…

探索 Transformer²:大语言模型自适应的新突破

目录 一、来源: 论文链接:https://arxiv.org/pdf/2501.06252 代码链接:SakanaAI/self-adaptive-llms 论文发布时间:2025年1月14日 二、论文概述: 图1 Transformer 概述 图2 训练及推理方法概述 图3 基于提示的…

SpringBoot3-整合WebSocket指南

更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞??收藏评论 SpringBoot3-整合WebSocket指南 1. 什么是WebSocket?2. 环境准备 2.1 项目依赖 3. WebSocket配置 3.1 WebSocket配置类3.2 自定义WebSocket处理器 4. 控制器5. 前端实现 5.1 HTML页面…

技术晋升读书笔记—办事的艺术

作为一名程序员,沟通能力对于我们这一行来说并不是强项。大多数程序员与电脑打交道的时间远远多于与人交流,特别工作一天有可能全程在与电脑打交道,因此沟通技巧的提升往往被忽视。然而,随着职业发展的推进,尤其在国内…

警惕IDEA 2024版重大Bug问题:LomBok失效、Gradle冲突、Spring Boot启动错误

一直以来我认为工具类的软件是越新越好,因为工具代表着一定的先进性;但是IDEA 2024好好的给我上了一课,比如lombok 不起作用、比如Spring Boot 3.4.x 启动报错、再比如MyBatis log plus冲突、再比如Gradle插件冲突. 一、Lombok 失效问题 请不…

01、flink的原理和安装部署

flink中主要有两个进程,分别是JobMManager和TaskManager,当然了根据flink的部署和运行环境不同,会有一些不同,但是主要的功能是类似的,下面我会讲下聊下,公司用的多的部署方式,基于yarn集群的部…

Vue2+OpenLayers实现车辆开始、暂停、重置行驶轨迹动画(提供Gitee源码)

前言:根据经纬度信息绘制一个完整的行驶路线,车辆根据绘制好的路线从开始点位行驶到结束点位,可以通过开始、暂停、重置按钮控制车辆状态。 目录 一、案例截图 二、安装OpenLayers库 三、​安装Element-UI ​ 四、代码实现 4.1、初始化…

两个React项目部署在同一个域名,一个主地址,一个子地址,二级白屏等问题

主域名配置的那个项目正常配置就可以了,但是对于子地址的项目,需要做很多的配置的。 注意 子地址的那个项目在配置中需要配置为子地址: base: /subpk 在vite.config.ts中修改: 如果这里没有配置正确,会导致白屏或者…

管理口令安全和资源(二)

DBMS_METADATA DBMS_METADATA 是 Oracle 数据库中的一个包,它提供了用于管理数据库元数据的工具和过程。元数据是关于数据的数据,它描述了数据库的结构,包括表、视图、索引、存储过程、用户和其他数据库对象的信息。DBMS_METADATA 包允许用户…

【狂热算法篇】探秘图论之 Floyd 算法:解锁最短路径的神秘密码(通俗易懂版)

: 羑悻的小杀马特.-CSDN博客羑悻的小杀马特.擅长C/C题海汇总,AI学习,c的不归之路,等方面的知识,羑悻的小杀马特.关注算法,c,c语言,青少年编程领域.https://blog.csdn.net/2401_82648291?spm1010.2135.3001.5343 在本篇文章中,博主将带大家去学习所谓的…

Kotlin Bytedeco OpenCV 图像图像57 图像ROI

Kotlin Bytedeco OpenCV 图像图像57 图像ROI 1 添加依赖2 测试代码3 测试结果 1 添加依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xmlns"http://maven.apache.o…

Linux手写FrameBuffer任意引脚驱动spi屏幕

一、硬件设备 开发板&#xff1a;香橙派 5Plus&#xff0c;cpu&#xff1a;RK3588&#xff0c;带有 40pin 外接引脚。 屏幕&#xff1a;SPI 协议 0.96 寸 OLED。 二、需求 主要是想给板子增加一个可视化的监视器&#xff0c;并且主页面可调。 平时跑个模型或者服务&#xff0c;…

【Linux】gdb_进程概念

&#x1f4e2;博客主页&#xff1a;https://blog.csdn.net/2301_779549673 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01; &#x1f4e2;本文由 JohnKi 原创&#xff0c;首发于 CSDN&#x1f649; &#x1f4e2;未来很长&#…

【k8s面试题2025】3、练气中期

体内灵气的量和纯度在逐渐增加。 文章目录 在 Kubernetes 中自定义 Service端口报错常用控制器Kubernetes 中拉伸收缩副本失效设置节点容忍异常时间Deployment 控制器的升级和回滚日志收集资源监控监控 Docker将 Master 节点设置为可调度 在 Kubernetes 中自定义 Service端口报…

飞牛 使用docker部署Watchtower 自动更新 Docker 容器

Watchtower是一款开源的Docker容器管理工具&#xff0c;其主要功能在于自动更新运行中的Docker容器 Watchtower 支持以下功能&#xff1a; 自动拉取镜像并更新容器。 配置邮件通知。 定时执行容器更新任务。 compose搭建Watchtower 1、新建文件夹 先在任意位置创建一个 w…

使用NetLimiter限制指定应用的网速

NetLimiter是一款用于网络流量监控和控制的软件&#xff0c;适合需要管理网络带宽的用户。在项目测试中&#xff0c;它帮助我对特定应用进行限速&#xff0c;合理分配网络资源&#xff0c;避免了因单一应用过度占用带宽而引发的网络问题。通过NetLimiter&#xff0c;我可以为每…

Python根据图片生成学生excel成绩表

学习笔记&#xff1a; 上完整代码 import os import re from openpyxl import Workbook, load_workbook from openpyxl.drawing.image import Image as ExcelImage from PIL import Image as PilImage# 定义图片路径和Excel文件路径 image_dir ./resources/stupics # 图片所…

56_多级缓存实现

1.查询Tomcat 拿到商品id后,本应去缓存中查询商品信息,不过目前我们还未建立Nginx、Redis缓存。因此,这里我们先根据商品id去Tomcat查询商品信息。此时商品查询功能的架构如下图所示。 需要注意的是,我们的OpenResty是在虚拟机,Tomcat是在macOS系统(或Windows系统)上,…

【Linux系统】Ext系列磁盘文件系统二:引入文件系统(续篇)

inode 和 block 的映射 该博文中有详细解释&#xff1a;【Linux系统】inode 和 block 的映射原理 目录与文件名 这里有几个问题&#xff1a; 问题一&#xff1a; 我们访问文件&#xff0c;都是用的文件名&#xff0c;没用过 inode 号啊&#xff1f; 之前总是说可以通过一个…

2024年博客之星年度评选—创作影响力评审入围名单公布

2024年博客之星活动地址https://www.csdn.net/blogstar2024 TOP 300 榜单排名 用户昵称博客主页 身份 认证 评分 原创 博文 评分 平均 质量分评分 互动数据评分 总分排名三掌柜666三掌柜666-CSDN博客1001002001005001wkd_007wkd_007-CSDN博客1001002001005002栗筝ihttps:/…