Matlab实现——Adaptive Quadrature Using Simpson’s Rule

MATLAB 与 C 语言的混合编程实战之辛普森积分法、自适应辛普森积分 题目要求 题目大意是让你用c系语言实现辛普森积分法对定积分的粗略估计,所谓辛普森积分法即为: 定义:辛普森法则(Simpson's rule)是一种数值积分方法,是牛顿-莱布尼茨公式的特殊形式,以二次曲线逼近的方式取代矩形或梯形积分公式,以求得定积分的数值近似解。其近似值如下: ... 阅读详情

欢迎前往个人博客 驽马点滴 和视频空间 哔哩哔哩-《挨踢日志》

%Input - f is the integrand input as a string ¡¯f¡¯
%    - a and b are upper and lower limits of integration
%   - tol is the tolerance
% Output  - SRmat is the table of values
%                - quad is the quadrature value
%                - err is the error estimate
%Initialize values
SRmat = zeros(30, 6);
iterating=0;
done=1;
SRvec=zeros(1, 6);
SRvec=srule(f, a, b, tol);
SRmat(1, 1:6)=SRvec;
m=1;
state=iterating;
while(state==iterating)
     n=m;
     for j=n:-1:1
         p=j;
         SR0vec=SRmat(p,:);
         err=SR0vec(5);
         tol=SR0vec(6);
if (tol<=err)
      %Bisect interval,apply Simpson¡¯s rule
      %recursively, and determine error
       state=done;
       SR1vec=SR0vec; SR2vec=SR0vec;
       a=SR0vec(1); b=SR0vec(2); c=(a+b)/2;
       err=SR0vec(5); tol=SR0vec(6); tol2=tol/2;
       SR1vec=srule(f,a,c,tol2);
       SR2vec=srule(f,c,b,tol2);
       err=abs(SR0vec(3)-SR1vec(3)-SR2vec(3))/10;
%Accuracy test
if (err<tol)
     SRmat(p, :)=SR0vec;
     SRmat(p,4)=SR1vec(3)+SR2vec(3);  SRmat(p,5)=err;
else
     SRmat(p+1:m+1,:)=SRmat(p:m,:);
     m=m+1;
     SRmat(p,:)=SR1vec;  SRmat(p+1,:)=SR2vec;
     state=iterating;
end
end
     end
end
quad=sum(SRmat(:,4));
err=sum(abs(SRmat(:,5)));
SRmat=SRmat(1:m,1:6);

 

srule.m

 

%Program7.5(Simpson's Rule)

function Z=srule(f,a,b,tol)

%Input- f is the integrand input as a string ??f??

%- a and b are upper and lower limits of integration

%- tol is the tolerance

% Output - Z is a 1x6 vector [a b < xmlnamespace prefix ="st1" ns ="urn:schemas-microsoft-com:office:smarttags" />S S2 err tol1]

h=(b-a)/2;

C=zeros(1,3);

C=feval(f,[a (a+b)/2 b]);

S=h*(C(1)+4*C(2)+C(3))/3;

S2=S;

tol1=tol;

err=tol;

Z=[a b S S2 err tol1];

 

 

 

fun.m

 

function f=fun(x)

f=sin(4*x).*exp(-2*x);

 

 

 

Untitled.m

 

a=0;

b=3;

tol=0.00001;

f='fun';

[SRmat, quad, err]=adapt(f, a, b, tol)
欢迎前往个人博客  驽马点滴 和视频空间 哔哩哔哩-《挨踢日志》
自适应Simpson法&&P4525 【模板】自适应辛普森法1 何为自适应Simpson法 自适应辛普森算法(Adaptive Simpson′s rule)是一类近似算法(Approximation algorithm),主要用于在信息计算时求较难反导的函数的定积分。其思想是利用二次函数曲线来不断**拟合(Overfitting)所求曲线(显然这传统的直接用矩形或直边梯形作为微元更精准),而所谓的Adapative(自适应)**则是用于优化时间复杂度的方法。 ----wikipedia 在计算几何里,显然可在特殊情 阅读详情

相关推荐

Python:实现simpson rule辛普森法则算法(附完整源码)

Python:实现simpson rule辛普森法则算法(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 1200

Python小白数据科学教程:SciPy精讲

点击“简说Python”,选择“置顶/星标公众号”福利干货,第一时间送达!本文作者:王圣元转载自:王的机器本文预计阅读时间30分钟,实用性高,老表建议先收藏,然后转发朋友...

简说Python的博客 2794

simpsonQuadrature:使用辛普森求积计算函数的积分-matlab开发

% x = simpsonQuadrature(fun,tLow,tUpp,n) % % 此函数在 n 个均匀段中的每一个上使用辛普森正交来% 在区间 tLow <= t <= tUpp 上近似 fun(t) 的积分% % 输入: % fun = 函数句柄% f = 乐趣(t) % t = [1, nt] = [a,b] 上的时间查询点% f = [nx, nt] = 查询点的向量函数% tLow = 时间标量下限% tUpp = 时间标量上限% n = 间隔划分的段数% % 输出: % x = [nx, 1] = 沿每个维度的积分%

Matlab adaptive quadrature

% script to perform adaptive quadrature clear all, close all global pts % function to be integrated defined in routine f f = 'integrand'; a = 1; b = 3; pts = [a;b]; tol = input('Enter error toleran

玮哥的博客 944

Simpson's 1/3 rule (Composite):复合辛普森三分之一数值积分规则的Matlab代码-matlab开发

在数值分析中,辛普森法则是一种数值积分方法,是定积分的数值近似。 辛普森法则也对应于三点牛顿-科特斯求积法则。 有关详细信息,请参见 ( https://en.wikipedia.org/wiki/Simpson's_rule )。 例子: 输入下限a:1 输入上限 b:2 输入步长 16 积分值为0.408009>>

Iterative Adaptive Simpson and Lobatto Quadrature:Iterative Adaptive Simpson and Lobatto Quadrature-matlab开发

在几乎所有关于数字求积算法的标准书籍中,如自适应 Simpson 或自适应 Lobatto 算法,都以递归方式呈现。 递归编程的好处是简洁明了的表示。 但是,递归正交算法可能会转换为迭代正交算法,而无需对算法结构进行重大修改。 我们提出了迭代自适应正交算法(adaptiveSimpson 和adaptiveLobatto),它保留了递归算法(例如quad、quadv 和quadl)的紧凑性和清晰度。 我们的迭代算法提供了积分函数的并行计算,这通常会导致运行时间的巨大收益。 一旦编程语言允许并行访问积分函数,我们的结果表明自适应求积公式的通用迭代而不是递归实现。

MATLAB运用规则,利用辛普森规则进行数值积分

Simpson's rule for numerical integrationZ = SIMPS(Y) computes an approximation of the integral of Y via the Simpson's method (with unit spacing). To compute the integral for spacing different from one...

weixin_36247910的博客 1644

人体姿态估计的强大算法

一种用于人体姿态估计的强大算法,可以检测并且定位人体的四肢及躯干和头部的位置,用于更高层次的分析。 (Pose estimation) 文件列表: parse_matlab parse_matlab\parseHorse.m parse_matlab\condenseLRResp.m parse_matlab\README parse_matlab\expected_genmodel_FHedgesN.m parse_matlab\util parse_matlab\util\imvq16.m parse_matlab\util\printSegs.m parse_matlab\util\oeFilterc.m parse_matlab\util\mydetGMc.m parse_matlab\util\assert.m parse_matlab\util\printSkel.m parse_matlab\util\sampleWithR.m parse_matlab\util\isum.m parse_matlab\util\buildHistExps.m parse_matlab\util\local_sum_zero.m parse_matlab\util\nonmax.m parse_matlab\horse001.jpg parse_matlab\partshiftZ0.m parse_matlab\GPL parse_matlab\horseModel.mat parse_matlab\expected_genmodel_FHedgecolsW.m parse_matlab\im0229.jpg parse_matlab\getSegmentsEdge.m parse_matlab\peopleModel.mat parse_matlab\sample_genmodel_FHedgecolsW.m parse_matlab\avgSegmentsEdge.m parse_matlab\HorseConvRun.mat parse_matlab\im0229.dat parse_matlab\parseim.m parse_matlab\parsePerson.m

matlab用辛普森公式求积分_标准正态分布概率密度函数的定积分计算方法及Python实现代码...

最近利用碎片时间在读Allen B.Downey的《贝叶斯思维:统计建模的Python学习法》,顺便用手机上的Pythonista写实例。因为Pythonista没有scipy科学计算包,遇上需求标准正态累积分布函数的时候就只能抓瞎,为此决定自己写一个。累积分布函数(Cumulative Distribution Function,CDF)就是概率密度函数(Probability De...

weixin_39705193的博客 4262

Simpson's 3/8 rule (Composite):用于数值积分的辛普森三八法则(复合)的 Matlab 代码。-matlab开发

Simpson 的 3/8 规则是 Thomas Simpson 提出的另一种数值积分方法。 它基于三次插值而不是二次插值。 辛普森的 3/8 规则如下: ( https://en.wikipedia.org/wiki/Simpson's_rule ) 例子: 输入下限a:1 输入上限 b:2 输入子区间数n:21 积分值为0.381665>>

Simpson-trapizoidal:Simson 1/3、3/8 和梯形规则-matlab开发

结果评估和代码之间的比较

辛普森法 matlab,MATLAB辛普森法则

梯形规则和辛普森规则是牛顿-科特规则的特例, 它们使用更高阶的函数进行数值积分。让抛物线代表图形的曲线。y =αx2+βx+γ…………。方程1 在此方法下, 间隔-h≤x≤h的面积为 曲线穿过三个点(-h, y0), (0, y1)和(h, y2)。然后, 通过等式, 我们有:现在我们可以评估系数α, β, γ并以h, y0, y1和y2表示等式2。这可以通过以下过程完成。通过将等式3的(b)代入...

weixin_39657521的博客 2940

matlab定积分的近似计算

matlab定积分的近似计算,详细介绍了利用matlab对定积分进行近似计算的步骤和方法。

matlab quadgk,(권장되지 않음) 적분의 수치적 계산, 적응적 심슨 구적법(Adaptive Simpson Quadrature)...

quad(권장되지 않음) 적분의 수치적 계산, 적응적 심슨 구적법(Adaptive Simpson Quadrature)quad는 권장되지 않습니다. integral을 대신 사용하십시오.구문q = quad(fun,a,b)q = quad(fun,a,b,tol)q = quad(fun,a,b,tol,trace)[q,fcnt] = quad(...)설명구적법은 함수의 ...

weixin_35552251的博客 390

大白话系列:什么是微服务

用大白话和实际例子来通俗易懂地告诉你什么是微服务~

2401_87403086的博客 1242

无人机蜂群作战设计技术详解

构建防御网络,拦截敌方无人机或导弹;无人机蜂群作战设计技术是一种创新的军事应用概念,它基于生物仿生学原理,通过先进的通信技术、自主导航与决策算法,将大量小型、低成本、功能各异的无人机组织成一个高度协同的群体,以执行复杂多样的军事任务。无人机蜂群作战的概念源于自然界中蜜蜂、蚂蚁等生物群体的行为模式,这些生物群体通过简单的个体间的信息交互和分工协作,能够完成远远超出单一个体能力的复杂任务。其中,无人机群体是执行任务的主体,指挥控制系统负责任务分配和决策,通信数据链则保障无人机群体与指挥控制系统之间的信息交换。

专注多旋翼、复合翼无人机技术研究,从事低空经济行业。 2214

Simpson’s Rule (辛普森法则)

  In Simpson’s Rule, we will use parabolas to approximate each part of the curve. This proves to be very efficient since it’s generally more accurate than the other numerical methods such as straight ...

liangdaojun的博客 2万+

项目经理面试 5 大高频题 + 实战回答模板,帮你稳拿 offer

项目经理面试5大高频问题及应答技巧 摘要:本文总结了项目经理岗位常见的5个面试问题及回答策略,帮助求职者更有针对性地准备面试。核心问题包括:1)描述负责过的典型项目;2)常用项目管理工具;3)项目遇到的挑战及解决方案;4)风险管理方法;5)项目成功标准。每个问题都从面试官考察重点、回答技巧、实战案例三个维度进行分析,强调要用STAR法则(情境-任务-行动-结果)结构化表达,突出解决问题的能力而非简单罗列经历。特别提醒要量化项目成果(如提前2周上线、节省8%预算等),并注意展示商业思维和团队协作能力。

逸尘谈PM 2105

simpson积分公式

看了Simpson积分公式,惊讶于积分方法在几何问题中竟如此强大! 比如几何中的求面积、体积问题,可以用积分的方法,在某个方向上用扫描线或扫描面切过图形,求被覆盖的长度或面积,然后进行积分。 对于这类问题,如果能直接求出面积、体积,或者能列出覆盖长度(面积)关于扫描线(面)的位置的函数,然后手算积分,那当然是再好不过了。但是,如果直接用解析法、公式法比较费时费力,思考难

fengzhizi76506的博客 3万+

从IR Drop到EM分析:数字IC电源规划中那些没人明说的细节(以MTCMOS配置为例)

本文深入探讨数字IC后端设计中电源规划的关键细节,特别关注MTCMOS配置、电源网络电阻最小化和level shifter供电等实战技巧。通过分析IR Drop和EM问题,提供优化floorplan和powerplan的具体策略,帮助工程师避免常见陷阱,提升芯片设计的稳定性和可靠性。

q9w8e7r6t5的博客 511

使用 C# 开发海康设备实时视频流的监控与报警系统

本文介绍了如何使用C#结合海康威视SDK(HCNetSDK)开发安防监控系统,涵盖设备登录、视频流获取、报警处理和云台控制等核心功能。内容包括开发环境配置、系统架构设计、关键代码实现(如设备登录、实时视频播放、报警设置)以及用户界面设计。通过Windows Forms/WPF,开发者可构建完整的监控应用,实现设备管理、视频监控、报警响应等功能。系统采用模块化设计,便于扩展和维护,适用于各类安防场景。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1355

Matlab实现——Recursive Trapezoidal Rule

欢迎前往个人博客驽马点滴和视频空间 哔哩哔哩-《挨踢日志》 rctrap.m %Program 7.3 (Recursive Trapezoidal Rule). function T=rctrap(f,a,b,n,tol) %Input - f is the integrand input as a string ’f’ % - a and b are upper an...

humanxing的专栏 2295

OPC UA 协议详解

OPC UA(统一架构)是新一代工业自动化标准通信协议,替代传统OPC Classic,具有跨平台、高安全性、标准化等优势。基于TCP协议,支持全平台部署,采用面向对象架构组织数据,提供实时读写、事件订阅、历史数据访问等功能。作为工业4.0核心协议,适用于智能制造、数字孪生等场景,能实现多品牌设备统一接入。相比Modbus和MQTT,OPC UA协议更规范安全但复杂度较高,是大型工业集群互联的主流选择。

eastyuxiao的专栏 725
上一篇: Matlab实现——Adams-Bashforth-Method
下一篇: Matlab实现——Clamped Cubic Spline
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值