利用Matlab编写龙贝格算法(romberg)求函数积分

article/2025/10/1 21:51:33


 这次是我初次接触matlab,源于数学老师布置的一个作业:用龙贝格算法来计算函数的积分

 

具体的计算原理,由于是数学的东西,不好打印,就不写了。主要把自己的代码贴下来慢慢理解。

 

一共写了两个文件。一个是romberg.m主要是写利用龙贝格算法,第二个是compute.m是调用之前写的接口

 

代码如下:

romberg.m

function [R,k,T]=romberg(fun,a,b,tol)
% 龙贝格(Romberg数值求解公式)
% author:
%   -gongwanlu
% inputs:
%   -fun:积分函数句柄
%   -a/b:积分上下限
%   -tol:积分误差
% Outputs:
%   -R:7阶精度Romberg积分值
%   -k:迭代次数
%   -T:整个迭代过程
%
% Example
% fun=@(x)4./(1+x^2);
% [R,k,T]=romberg(fun,0,1,1e-6)
%
k=0; % 迭代次数
n=1; % 区间划分个数
h=b-a;
T=h/2*(fun(a)+fun(b));
err=1;
while err>=tolk=k+1;h=h/2;tmp=0;for i=1:ntmp=tmp+fun(a+(2*i-1)*h);endT(k+1,1)=T(k)/2+h*tmp;for j=1:kT(k+1,j+1)=T(k+1,j)+(T(k+1,j)-T(k,j))/(4^j-1);endn=n*2;err=abs(T(k+1,k+1)-T(k,k));
end
R=T(k+1,4);

 

compute.m

%计算(4/1+X^2)在0到1上面的积分
a = 0
b = 1
epsilon = 5e-6
f = @(x)4 ./ (1 + x^2);
y = romberg(f,a,b,epsilon) %后面是画出函数图像,注,不是积分函数图像。是被积函数图像
x = 0:0.01:1;
z = 4 ./ ( 1 + x.^2 );
plot(x,z),xlabel('x'),ylabel('y'),title(['Result = ',num2str(y)])

 

 画出的图像为,积分结果写在了图像上面。

 

 


http://chatgpt.dhexx.cn/article/dYifqYrX.shtml

相关文章

数值计算笔记之数值积分(二)龙贝格算法

龙贝格求积公式也称为逐次分半加速法。它是在梯形公式、辛普森公式和柯特斯公式之间的关系的基础上,构造出一种加速计算积分的方法。 作为一种外推算法,它在不增加计算量的前提下提高了误差的精度。 在等距基点的情况下,用计算机计算积分值通…

高斯-勒让德积分学习

高斯-勒让德积分求解函数积分 前言高斯-勒让德积分一般积分区间的归一化Exponential Integral实验参考 前言 梯度和辛普森是经典的几何求积分方法,简单易懂,那如果要更加高档(复杂难懂)的求积分方法找哪家了?高斯-勒让…

数值积分公式及龙贝格(Romberg)算法实现matlab

一、数值积分方法得基本思想 二、复化求积公式 三、基于复化梯形求积公式的高精度求积算法——Richardson外推法和Romberg算法 四、Romberg算法的matlab程序: function Romberg % 龙贝格(Romberg数值求解公式) % inputs: % -fun:积分函数句柄 % -a/…

数值积分:龙贝格求积

一、数学原理 在变步长的复化梯形计算过程中运用: 就能将粗糙的梯形值Tn逐步加工成精度较高的辛普森值Sn、柯特斯值Cn和龙贝格值Rn。或者说,将收敛缓慢的梯形值序列Tn加工成收敛迅速的龙贝格值序列Rn,这种线性外推的加速方法称为龙贝格算法&…

数值积分之龙贝格积分

除了复化求积外,这里用龙贝格积分法进行近似求积,其原理与埃特金插值有些类似,进行线性整合后使结果具有高精度的求积效果。在实际过程中,由于对于评判合理步长的困难,我们常采取变步长的办法进行计算,使结…

积分极限定理+勒贝格控制收敛定理+高数

在处理积分与极限的交换顺序问题上,勒贝格积分比黎曼积分要求的条件要弱的多(并且条件更易于验证) 积分与极限交换顺序的定理: 控制收敛定理 { f n ( x ) } 为 E 上 的 一 列 可 测 函 数 \{ f_n(x)\}为E上的一列可测函数 {fn​(…

[转]勒贝格积分的框架与通俗理解

为什么会出现勒贝格积分 这个问题等价于勒贝格积分和黎曼积分有什么区别。其实这个区别没有那么玄,反而很好解释。问题的根源在于黎曼积分的定义上。黎曼积分:.黎曼积分是在轴上做的分割,虽然可以分割得很细,但只要被积函数在这个…

实变函数自制笔记9:勒贝格积分的极限定理

1、非负可测函数积分的极限: 背景:在数学分析里,函数列极限函数黎曼可积性有这样的表述:,且每个均在上可积函数列的极限函数也在上可积;从而有这样的公式:;那我们会想,勒…

实变函数自制笔记8:初识勒贝格积分

1、勒贝格(Lebesgue)积分: 背景:勒贝格积分是在勒贝格测度论的基础上建立起来的,这一理论可以统一处理函数有界、无界的情形,且函数也可以定义在更一般的点集(不一定是)上&#xff…

python三阶魔方_三阶魔方还原公式

1. 第二层棱块归位: 2. 顶层十字 3. 顶层棱中间块归位 这一步的目的是使顶层的4个棱中间块全部归位。 转动顶层(U),若可以使一个棱中间块归位(如下图左,这里以[红-黄]块为例),而其他3个都不能归位,则将[红-黄]所在这一…

QA和QC到底是什么区别?

QA和QC到底是什么区别? 发现迄今为止,仍然有很多工程师,甚至很多的企业对QA和QC的概念仍然非常的模糊不清.两个概念也经常性的混淆,特别是在互联网公司,那么今天小编这里就对QA和QC到底有什么区别,展开一下讨论. 在讲到软件工程体系中的时候,我们不仅要延伸到从最早通过简单…

生产追溯系统-IQC来料检验

相信大家都知道,任何一家工厂都有自己的仓库,用来存储采购回来的物料,那么在供应商将我们采购的物料送到工厂之后,我们都需要一个检验动作,也就是>IQC来料检验,这个检验动作是非常重要的一个环节&#x…

质量控制之室内质控(IQC)和室间质评(EQA)

检验医学——中华检验医学网旗下微信公众平台。您的随身微杂志。 很多人都有过这样的经历:拿着做过的医疗检查单换一家医院看病,所有的检查还得重做。对患者来说,过多的医疗检查也是造成看病难、看病贵的因素之一。为贯彻落实国务院办公厅《关…

ERP的IQC检验

ERP IQC检验是一种全面的物料质量控制机制,旨在保证入库前货物都能够符合质量要求。它涉及及时检验物料的质量以及根据检验的结果判断是否需要发货或回退。 ERP中的IQC检验内容 IQC模块使企业能够进行质量检查,确保产品质量,以满足客户的需…

工厂里常说的QC, IQC, IPQC, QA 简介

一、QC与QA QC:Quality Control,品质控制,产品的质量检验,发现质量问题后的分析、改善和不合格品控制相关人员的总称。 IQC:意思是来料的质量控制 IPQC:过程质量控制。 FQC:成品质量检验 O…

【spring】Spring是什么?

一.Spring的简介 Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。 然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中…

Spring是什么意思?

Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。 Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序…

Java之Spring

目录 创建spring项目存储bean对象到容器(spring)中从spring中将bean取出更简单的读取存储对象存储bean对象前置准备添加注解存储 Bean 对象 获取bean对象 bean作用域和生命周期定义bean的6种作用域bean生命周期 IOC优点:实现代码的解耦&#…

Spring官方文档(中文版!!!)

https://docs.spring.io/spring/docs/5.2.5.BUILD-SNAPSHOT/spring-framework-reference/images/prototype.png本文档是对spring官方文档的解读,原文档参见Spring官方文档 ,本人只是翻译和整理,由于水平有限,部分解读可能不正确&…

Spring入门第一讲——Spring框架的快速入门

Spring的概述 什么是Spring? 我们可以从度娘上看到这样有关Spring的介绍: 说得更加详细一点,Spring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,由Rod Johnson在其著作Expert One-On-One J2EE …