数值积分——复化梯形求积公式 | 北太天元

news2025/1/19 3:29:35

复化求积法的思想:
将区间 [ a , b ] [a,b] [a,b]进行 n n n等分,步长 h = b − a n h=\frac{b-a}{n} h=nba,等分点 x k = a + k h , k = 0 , 1 , 2 , ⋯   , n x_{k}=a+kh,k=0,1,2,\cdots,n xk=a+kh,k=0,1,2,,n,
先在每个子区间 [ x k , x k + 1 ] [x_k,x_{k+1}] [xk,xk+1]上采用低阶的数值求积公式求得近似积分值 I k I_k Ik,
再将它们累加并以和 ∑ k = 0 n − 1 I k \sum_{k=0}^{n-1}I_k k=0n1Ik作为积分 I = ∫ a b f ( x ) d x \mathrm{I}=\int_{\mathrm{a}}^{\mathrm{b}}\mathrm{f}(\mathrm{x})\mathrm{d}\mathrm{x} I=abf(x)dx的近似值.

复化梯形求积公式

将积分区间 [ a , b ] [a,b] [a,b]进行 n n n等分,步长为 h = b − a n h=\frac{b-a}{n} h=nba,节点 x k = a + k h , ( k = 0 , 1 , 2 , ⋯   , n ) x_{k}=a+kh,(k=0,1,2,\cdots,n) xk=a+kh,(k=0,1,2,,n)
I ( f ) = ∫ a b f ( x ) d x = ∑ i = 0 n − 1 ∫ x i x i + 1 f ( x ) d x I(f)=\int_a^bf(x)\mathrm{d}x=\sum_{i=0}^{n-1}\int_{x_i}^{x_{i+1}}f(x)\mathrm{d}x I(f)=abf(x)dx=i=0n1xixi+1f(x)dx

[ x i , x i + 1 ] [x_i,x_{i+1}] [xi,xi+1]上使用梯形公式
∫ x i x i + 1 f ( x ) d x = h 2 [ f ( x i ) + f ( x i + 1 ) ] − f ′ ′ ( ξ i ) h 3 12 ≈ h 2 [ f ( x i ) + f ( x i + 1 ) ] \int_{x_i}^{x_{i+1}}f(x)\mathrm{d}x=\frac{h}{2}[f(x_i)+f(x_{i+1})]-f''(\xi_i)\frac{h^3}{12}\approx\frac{h}{2}[f(x_i)+f(x_{i+1})] xixi+1f(x)dx=2h[f(xi)+f(xi+1)]f′′(ξi)12h32h[f(xi)+f(xi+1)]


I ( f ) = ∑ i = 0 n − 1 { h 2 [ f ( x i ) + f ( x i + 1 ) ] − f ′ ′ ( ξ i ) h 3 12 } ≈ h [ 1 2 f ( a ) + ∑ i = 1 n − 1 f ( x i ) + 1 2 f ( b ) ] I(f)=\sum_{i=0}^{n-1}\left\{\frac{h}{2}[f(x_{i})+f(x_{i+1})]-f^{\prime\prime}(\xi_{i})\frac{h^{3}}{12}\right\} \approx h\left[\frac{1}{2}f(a)+\sum_{i=1}^{n-1}f(x_{i})+\frac{1}{2}f(b)\right] I(f)=i=0n1{2h[f(xi)+f(xi+1)]f′′(ξi)12h3}h[21f(a)+i=1n1f(xi)+21f(b)]

得复化梯形公式
T ( h ) = T n ( f ) = h [ 1 2 f ( a ) + ∑ i = 1 n − 1 f ( x i ) + 1 2 f ( b ) ] ≈ ∫ a b f ( x ) d x T(h)=T_n(f)=h\left[\frac{1}{2}f(a)+\sum_{i=1}^{n-1}f(x_i)+\frac{1}{2}f(b)\right]\approx \int_a^bf(x)\mathrm{d}x T(h)=Tn(f)=h[21f(a)+i=1n1f(xi)+21f(b)]abf(x)dx


算法

♡ \heartsuit 复化梯形求积公式:T = comp_tra_integral(a,b,n,f)

  1. 输入

    • [ a , b ] [a,b] [a,b]
    • n n n:将 [ a , b ] [a,b] [a,b] n n n等分
    • f f f:已经定义好的函数,支持向量运算
  2. 实现步骤

    • 计算出 [ a , b ] [a,b] [a,b] n n n等分后得到的 n + 1 n+1 n+1个节点,构成向量 x 0 x_0 x0
    • y 0 = f ( x 0 ) y_0 = f(x_0) y0=f(x0)
    • 代入
      ∫ a b f ( x ) d x ≈ h [ 1 2 f ( a ) + ∑ i = 1 n − 1 f ( x i ) + 1 2 f ( b ) ] = T \int_a^bf(x)\mathrm{d}x\approx h\left[\frac{1}{2}f(a)+\sum_{i=1}^{n-1}f(x_i)+\frac{1}{2}f(b)\right] = T abf(x)dxh[21f(a)+i=1n1f(xi)+21f(b)]=T
  3. 输出

    • T T T:通过复化梯形求积公式得到的积分近似值

北太天元源程序

function T = comp_tra_integral(a,b,n,f)
% [a,b]
% n :小区间的个数
% f:定义好的函数
%
%   Version:            1.0
%   last modified:      07/10/2023
    h = (b-a)/n;
    k = 0:1:n;
    xi = a + k * h;
    yi = f(xi);
    sumy = sum(yi(2:1:n));
    T = (yi(1)/2 + sumy + yi(n+1)/2)*h;
end

保存为 comp_tra_integral.m文件

数值算例

用数值积分法近似计算
π = 4 ∫ 0 1 1 1 + x 2 d x \pi = 4\int_0^1 \frac{1}{1+x^2}\mathrm{d}x π=4011+x21dx
编写复化梯形公式的实现程序,分别取剖分段数 $ n = 10, 20, 40, 80, 160, $ 计算积分值与 π \pi π 的误差并作图;

% 复化梯形求积例子
%   last modified:      07/11/2023
%   file need: comp_tra_integral.m
%%
clc;clear all;format long;
f = @(x) 4./(1+x.^2);

N = [10 20 40 80 160];
delta = zeros(1,5);
k = 1;
for n = N
    T = comp_tra_integral(0,1,n,f);
    delta(k) = abs(pi-T);
    k++;
end
    	plot(N,delta,'b');
disp(delta);

运行后得到
在这里插入图片描述
可以发现,复化求积法下对积分的计算是非常稳定的,避开了Newton-Cotes 公式下随阶数升高带来的不稳定性。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

FANUC发那科机器人如何进行维修

FANUC发那科机器人是一种广泛应用于制造业的自动化设备,其可靠性和稳定性对于生产线的正常运行至关重要。然而,随着使用时间的增加,机器人难免会出现各种法兰克机械手故障和维修FANUC机器人需求。 一、了解发那科机器人故障现象 首先&#xf…

智慧城市标准化白皮书(2022版)发布

2022年7月25日,国家智慧城市标准化总体组2022年度全体会议召开期间,《智慧城市标准化白皮书(2022版)》正式发布。 城市作为一个复杂巨系统,是多元主体融合及多元活动集聚的复杂综合体。城市的运行发展关联 到发展、治…

2024年教你学会如何把学浪视频下载到本地

今年是2024年,依然有很多小伙伴想下载学浪却不知道怎么下载,本文就教大家如何使用小浪助手工具下载学浪视频 小浪助手工具我已经打包好了,有需要的自己取一下 学浪下载工具链接:https://pan.baidu.com/s/1-axc7xDtwU_KtupCe52sV…

Nodejs--异步编程

异步编程 函数式编程 高阶函数 在通常的语言中,函数的参数只接受基本的数据类型或者是对象引用,返回值只能是基本数据类型和对象引用。 function foo(x) {return x }高阶函数是把函数作为参数,将函数作为返回值的函数 function foo(x) {…

最短路问题之Bellman-Ford,SPFA算法,例题 负环

Bellman-Ford算法: Bellman-Ford算法用于解决带有负权边的单源最短路径问题。其基本思想是通过不断地松弛边来逐步求解最短路径。算法的主要步骤如下: 初始化:将源点到各个顶点的距离初始化为无穷大,源点的距离初始化为0。重复更…

二. 搭建Nginx 直播流程服务器

目录 1. 前言 2. 安装 Nginx 依赖 3.下载源码 4. 编译安装 5.配置 rtmp 服务 6.验证配置 1. 前言 服务器由 NGINXRTMP 构成。 NGINX 是 HTTP 服务器, RTMP 是附加模块。 其中 NGINX 我选择的是用 源码编译方式 进行安装,因为这种方式可以自定义…

Three.js入门学习笔记

学习资料: 【Three.js】Three.js快速上手教程_three.module.js-CSDN博客 2024年了,是该学学Three.js了_three.js 2024-CSDN博客 一、three.js简介 three.js是JavaScript编写的WebGL第三方库。 three.js,webGL,openGL三者的关…

WEB前端-笔记(三)

目录 一、事件 1.1类型 1.2对象 1.3页面加载事件 1.4滚动事件 1.5尺寸事件 1.6捕获&冒泡事件 1.7阻止表单提交 1.8全选案例 1.9事件委托 ​编辑 1.10client&offset 1.11换取元素的位置 1.12创建节点 1.13克隆节点 1.14删除节点 1.15setTimeout 1.16s…

人工智能入门(一):基于Pytorch的手写数字识别模型

前言: 因为还在上学,时间不太够用,很多内容写到后面心有余力不足,未来有时间我会慢慢补充。人工智能的知识涉猎范围广又杂乱无章,啃书或上课学到的知识往往很早就过时了或者离实际的项目无关。所以,我很希…

【Git教程】(十七)发行版交付 — 概述及使用要求,执行过程及其实现,替代解决方案 ~

Git教程 发行版交付 1️⃣ 概述2️⃣ 使用要求3️⃣ 执行过程及其实现3.1 预备阶段:创建 stable 分支3.2 预备并创建发行版3.3 创建补丁 4️⃣ 替代解决方案 对于每个项目或产品来说,发布版本的创建都需要一定的时间,其具体过程因各公司或组…

arm版Linux下安装大数据集群各种组件

背景:由于本人是用的Macbookpro m2来进行开发的,很多环境和Intel芯片的都不一样,期间安装各种软件遇到各种问题,为了以后不走之前的老路,现记录各种软件的安装步骤。 系统安装组件说明 序号组件名称组件版本1jdkjdk-…

2024年电子商务与大数据经济国际会议 (EBDE 2024)

2024年电子商务与大数据经济国际会议 (EBDE 2024) 2024 International Conference on E-commerce and Big Data Economy 【会议简介】 2024年电子商务与大数据经济国际会议即将在厦门召开。本次会议旨在汇聚全球电子商务与大数据经济领域的专家学者,共同探讨电子商务…

基于MaxKB搭建一个知识库问答系统

什么是MaxKB MaxKB 是一款基于 LLM 大语言模型的知识库问答系统。MaxKB Max Knowledge Base,旨在成为企业的最强大脑。 开箱即用:支持直接上传文档、自动爬取在线文档,支持文本自动拆分、向量化,智能问答交互体验好&#xff1b…

深度学习| 注意力机制

注意力机制 为什么需要注意力机制Seq2Seq问题Transfomer Attention注意力机制分类软硬注意力注意力域 为什么需要注意力机制 这个可以从NLP的Seq2Seq问题来慢慢理解。 Seq2Seq问题 Seq2Seq(Sequence to Sequence):早期很多模型中&#xff…

扭蛋机小程序对市场的发展有哪些推动作用?

近几年,扭蛋机发展的非常迅猛。随着二次元文化的火热,给扭蛋机带来了发展机遇,扭蛋机行业也受到了大众的喜爱。扭蛋机的商品种类多样化,包含了各类热门IP周边衍生品、玩具、小商品等,适合所有消费人群,市场…

2024年汉字小达人活动还有5个月开赛:来做18道历年选择题备考吧

现在距离2024年第11届汉字小达人比赛还有五个多月的时间,如何利用这段时间有条不紊地备考呢?我的建议是两手准备:①把小学1-5年级的语文课本上的知识点熟悉,重点是字、词、成语、古诗。阅读理解不需要。②把历年真题刷刷熟&#x…

【漏洞复现】云时空社会化商业ERP系统slogin SQL注入漏洞

漏洞描述: 云时空社会化商业ERP系统slogin存在SQL注入漏洞,攻击者可以通过此漏洞获取数据库敏感信息。 搜索语法: Fofa-Query: app"云时空社会化商业ERP系统" 漏洞详情: 1.云时空社会化商业ERP系统。 2.漏洞POC: …

浏览器和nodejs中的eventloop

浏览器和nodejs中的eventloop 浏览器中的Event Loop 在浏览器中,设计成为了单线程。如果要处理异步请求,则需要增加一层调度逻辑,把js代码封装成一个个的任务,放在一个任务队列中,主线程不断的读取任务执行。每次调取…

IDEA2023版本创建Sping项目无法使用Java8

1. 问题复现 1.1 当前版本2023.3.2 1.2 创建项目时:不存在jdk8选项 提示报错 1.3 原因分析 Spring官方发布Spring Boot 3.0.0 的时候告知了一些情况,Java 17将成为未来的主流版本 2. 如何解决 2.1 替换创建项目的源 我们只知道IDEA页面创建Spring项目…

玩转PyCharm

玩转PyCharm PyCharm是由JetBrains公司开发的提供给Python专业的开发者的一个集成开发环境,它最大的优点是能够大大提升Python开发者的工作效率,为开发者集成了很多用起来非常顺手的功能,包括代码调试、高亮语法、代码跳转、智能提示、自动补…