matlab使用教程(37)—求解数值积分(2)

news2024/11/28 12:49:32

1多项式积分的解析解

        本示例显示如何使用 polyint 函数对多项式求解析积分。使用此函数来计算多项式的不定积分。

1.1定义问题

        考虑实数不定积分,
        其中 k 是积分常量。由于没有指定积分限值, integral 函数族不太适合求解这个问题。

1.2用向量表示多项式

        创建一个向量,其元素代表各 x 降幂的系数。
p = [4 0 -2 0 1 4];

1.3对多项式求解析积分

        使用 polyint 函数求多项式的解析积分。指定第二输入参数的积分常量。
k = 2;
I = polyint(p,k)
输出是一个 x 降幂系数向量。这一结果与上述解析解相匹配,但有积分常量 k = 2

2数值数据的积分

        此示例显示如何对一组离散速度数据进行数值积分以逼近行驶距离。integral 族仅接受函数句柄输入,所以这些函数不能用于离散数据集。当函数表达式不能用于积分时,使用 trapz cumtrapz

2.1查看速度数据

        考虑以下速度数据和相应的时间数据。
vel = [0 .45 1.79 4.02 7.15 11.18 16.09 21.90 29.05 29.05 ...
29.05 29.05 29.05 22.42 17.9 17.9 17.9 17.9 14.34 11.01 ...
8.9 6.54 2.03 0.55 0];
time = 0:24;
这些数据代表汽车的速度(米/秒),间隔为 1 秒,时间超过 24 秒。
绘制速度数据点并将各点用直线连接。
figure
plot(time,vel,'-*')
grid on
title('Automobile Velocity')
xlabel('Time (s)')
ylabel('Velocity (m/s)')

        斜率在加速时为正,恒速时为零,减速时为负。在 t = 0 的时间点,车辆处于静止,速度为 vel(1) = 0 米/秒。然后车辆以 vel(9) = 29.05 米/秒的速度加速,并在 t = 8 秒内达到最大速度,并保持这种速度 4 秒的时间。然后车辆在 3 秒之内减速到 vel(14) = 17.9 米/秒并最终静止。由于这个速度曲线有多处不连续,此不能用单一连续函数来描述。

2.2计算总行驶距离

        trapz 使用数据点进行离散积分以创建梯形,所以它非常适合处理不连续的数据集。这种方法假设在数据点之间为线性行为,当数据点之间的行为是非线性时,精度可能会降低。为了说明这一点,可将数据点作为顶点在图表上画出梯形。
xverts = [time(1:end-1); time(1:end-1); time(2:end); time(2:end)];
yverts = [zeros(1,24); vel(1:end-1); vel(2:end); zeros(1,24)];
p = patch(xverts,yverts,'b','LineWidth',1.5);

        trapz 可通过将区域分解成梯形来计算离散数据集下的面积。然后,函数将每个梯形面积累加来计算总面积。
        通过使用 trapz 求速度数据积分来计算汽车的总行驶距离(对应的着色区域)。默认情况下,如果使用语法 trapz(Y) ,则假定点之间的间距为 1 。但是,您可以使用语法 trapz(X,Y) 指定不同的均匀或非均匀间距 X 。在这种情况下, time 向量中读数之间的间距是 1 ,因此可以使用默认间距。
distance = trapz(vel)
distance = 345.2200
汽车在 t = 24 秒内行驶的距离约为 345.22 米。

2.3绘制累积行驶距离

        cumtrapz 函数与 trapz 密切相关。 trapz 仅返回最终的积分值,而 cumtrapz 还在向量中返回中间值。计算累积行驶距离并绘制结果。
cdistance = cumtrapz(vel);
T = table(time',cdistance','VariableNames',{'Time','CumulativeDistance'})
结果为:
T=25×2 table
Time CumulativeDistance
____ __________________
0 0
1 0.225
2 1.345
3 4.25
4 9.835
5 19
6 32.635
7 51.63
8 77.105
9 106.15
10 135.2
11 164.25
12 193.31
13 219.04
14 239.2
15 257.1
plot(cdistance)
title('Cumulative Distance Traveled Per Second')
xlabel('Time (s)')
ylabel('Distance (m)')

3计算表面的切平面

        此示例说明如何按有限差分逼近函数梯度。然后说明如何通过使用这些逼近的梯度,绘制平面上某个点的切平面。
f = @(x,y) x.^2 + y.^2;
使用 gradient 函数,相对 x y 逼近 f ( x , y ) 的偏导数。选择与网格大小相同的有限差分长度。
[xx,yy] = meshgrid(-5:0.25:5);
[fx,fy] = gradient(f(xx,yy),0.25);

为逼近切平面 z ,您需要求取相关点的导数值。获取该点的索引,并求取该位置的近似导数。
x0 = 1;
y0 = 2;
t = (xx == x0) & (yy == y0);
indt = find(t);
fx0 = fx(indt);
fy0 = fy(indt);
使用切平面 z 的方程创建函数句柄。
z = @(x,y) f(x0,y0) + fx0*(x-x0) + fy0*(y-y0);
绘制原始函数 f ( x , y ) 、点 P ,以及在 P 位置与函数相切的平面 z 的片段。
surf(xx,yy,f(xx,yy),'EdgeAlpha',0.7,'FaceAlpha',0.9)
hold on
surf(xx,yy,z(xx,yy))
plot3(1,2,f(1,2),'r*')

查看侧剖图。
view(-135,9)

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

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

相关文章

量子计算领域迎来了一项令人振奋的突破。

近日,量子计算领域迎来了一项令人振奋的突破。Quantinuum公司与科技巨头Microsoft宣布,双方在容错量子计算方面取得了显著成果。这一成就原本预计需要数年时间才能实现,但两家公司的紧密合作使得这一目标提前达成。 Quantinuum的新一代量子计…

js笔记(学习存档)

JS的调用方式与执行顺序 使用方式 HTML页面中的任意位置加上<script type"module"></script>标签即可。 常见使用方式有以下几种&#xff1a; 直接在<script type"module"></script>标签内写JS代码。直接引入文件&#xff1a;…

2024-4-7 QT day1作业

myWidget.cpp #include "mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent) {//设置窗口标题this->setWindowTitle("QQ");//设置窗口图标this->setWindowIcon(QIcon("C:\\Users\\张谦\\Desktop\\pictrue\\qq.png"));//设…

V R沉浸式体验的应用|R主题馆加盟|V R游戏体验馆加盟

《探索未知世界&#xff0c;沉浸式VR体验引领未来》 随着科技的飞速发展&#xff0c;虚拟现实&#xff08;VR&#xff09;技术正逐渐走进人们的生活&#xff0c;并为我们带来前所未有的沉浸式体验。下面让我们一起探索一下&#xff0c;VR沉浸式体验的应用领域和魅力所在。 虚…

安卓开机启动流程

目录 一、整体框架二、流程代码分析2.1 Boot ROM2.2 Boot Loader2.3 Kernel层Kernel代码部分 2.4 Init进程Init进程代码部分 2.5 zygote进程zygote代码部分 2.6 SystemServer进程SystemServer代码部分 2.7 启动Launcher与SystemUI 三、SystemServices3.1 引导服务3.2 核心服务3…

15个最流行的STL模型修复工具

如果你进行 3D 打印&#xff0c;可能遇到过可怕的“无法打印 STL”问题&#xff1a;你的 STL 文件看起来很棒&#xff0c;但它会导致切片机出现问题或导致奇怪的打印错误或完全失败。 无论确切原因是什么&#xff0c;这些问题的根源通常归结为 STL 用于表示 3D 模型的连接三角形…

day 74 js

JS的作用&#xff1a; 修饰 HTML 标签&#xff08;CSS&#xff09;设置 HTML 标签的动作&#xff08;JS&#xff09;JS特点&#xff1a;基于对象的编程语言&#xff0c;通过浏览器解释执行作用&#xff1a;表单验证、改变标签样式、获取和设置标签属性值 1 表单验证: <fo…

Java常用API_正则表达式_字符串的替换和截取方法——小练习

我将通过一个练习题来展示这两个方法 练习题&#xff1a; 有一段字符串&#xff1a;小张qwertyuiop123小李asdfghjkl456小王 要求1&#xff1a;把字符串中三个姓名之间的字母替换成vs 要求2&#xff1a;把字符串中的三个姓名切割出来 编写代码&#xff1a; public class Tes…

MacBook运行缓慢?揭秘一键释放内存的有效秘诀!

当 MacBook 出现运行缓慢的现象&#xff0c;很大程度上可能是由于内存资源耗尽所致。内存&#xff08;RAM&#xff09;作为计算机的核心临时存储区域&#xff0c;负责承载当前活跃的应用程序及其相关数据。一旦内存容量达到饱和&#xff0c;MacBook将不得不依赖交换文件机制&am…

大话设计模式——11.桥接模式(Bridge Pattern)

简介 将抽象部分与它的实现部分分离&#xff0c;使它们可以独立变化。 UML图&#xff1a; 应用场景&#xff1a; 系统需要在构建的抽象化角色和具体化角色之间增加更多的灵活性不想使用继承导致系统类的个数急剧增加某个类存在多个变化维度使用继承方式容易出现类的膨胀 示例…

Linux系统下关闭Java进程

关闭Java进程具体分为两步&#xff1a; 1.ps查进程ID 2.kill杀进程 具体的命令如下&#xff1a; ps查进程ID&#xff1a;ps -ef | grep java kill杀进程&#xff1a;kill -9 对应进程号 linux下解除被占用的端口号&#xff1a; 1.查看8088端口是否被占用&#xff1a; netsta…

设计模式之责任链模式讲解

概念&#xff1a;使多个对象都有机会处理请求&#xff0c;从而避免了请求的发送者和接收者之间的耦合关系。将这些对象连成一条链&#xff0c;并沿着这条链传递该请求&#xff0c;直到有对象处理它为止。最匹配的场景应该就是逐层审批的模式。 责任链模式只有两个角色&#xff…

基于单片机三路地磁场分量信号采集系统仿真

**单片机设计介绍&#xff0c;基于单片机三路地磁场分量信号采集系统仿真 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机三路地磁场分量信号采集系统仿真概要主要包括以下几个方面&#xff1a;系统组成、信号采集原理…

(Git) gitignore基础使用

文章目录 前言.gitignore 模式匹配注释 #转义 \直接匹配任意字符匹配 *单个字符匹配 ?目录分割 /多级目录 **范围匹配 []取消匹配 ! 检查是否生效父子文件END 前言 Git - gitignore Documentation (git-scm.com) 在使用git管理的项目中&#xff0c;可以通过.gitignore文件管理…

MySQL操作DDL

目录 1.概述 2.数据库的增删改查 3.表的增删改查 3.1.创建和查看表结构 3.2.修改表 3.3.查看所有的表 3.4.删除表 4.用户 5.DDL在实际应用场景中的作用 5.1.数据库设计 5.2.数据库维护 ​​​​​​​5.3.数据库迁移或重置 ​​​​​​​5.4.优化性能 ​​​​​…

IoTeX的旅程并非孤军奋战

自2017年起&#xff0c;IoTeX便作为一个雄心勃勃的开源项目&#xff0c;踏上了一条为机器打造开放经济的道路。这个宏伟的目标背后&#xff0c;是一个去中心化的平台愿景&#xff0c;一个能够让人类和机器在有保障的信任、自由意志及精心设计的经济激励下相互协作的开放生态系统…

高项-案例分析练习(成本管理)

题目来源&#xff1a;信管网 案例一 某企业承接了某政府部门的系统集成项目&#xff0c;项目投标费用为5万元&#xff0c;预计每个子项目开发完成后的维护成本为50万元&#xff0c;项目初步的WBS分解结构如图所示。 题目一 【问题1】&#xff08;2分&#xff09; 假如估算出子…

BM96 主持人调度(二)(贪心算法)

一开始写的时候忘了给start、end数组赋值了 import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定&#xff0c;请勿修改&#xff0c;直接返回方法规定的值即可** 计算成功举办活动需要多少名主持人* param n int整型 有n个活动* param start…

Walmart.com DSV XML对接需求

此前的文章Walmart.com DSV EDI对接需求中&#xff0c;为大家介绍了如果选择传输EDI文件需要做的准备与需求。本文将为大家介绍Walmart.com 与DSV&#xff08;Drop Ship Vender&#xff09;之间传输XML文件的需求。与EDI相比&#xff0c;XML文件的处理难度相对低一些。无论企业…

LiveGBS流媒体平台GB/T28181常见问题-系统服务日志如何配置日志个数日志路径日志时长web操作日志操如何配置保留天数及过滤

LiveGBS系统服务日志如何配置日志个数日志路径日志时长web操作日志操如何配置保留天数及过滤 1、系统服务日志1.1、日志目录1.2、配置日志文件个数及记录时间1.3、配置日志文件路径 2、Web 操作日志2.1、配置保留天数2.2、配置不记录操作日志2.1.1、不记录所有2.1.2、不记录指定…