万物皆数——用matlab求解二阶微分方程
一、背景
毕达哥拉斯的“万物皆数”哲学观点表达了一个理念,即宇宙万物都可以通过数学语言来描述,数是万物的本原。
勾股定理就是毕达哥拉斯提出,因此在西方勾股定理也被叫做毕达哥拉斯定理。
工科类的专业,越到后面越感觉到数学的重要性,无论是控制,计算机还是机器人专业,都需要很好的数学功底。
最近在做DMP相关的内容时,需要求解二阶微分方程,无奈早已把学的还给老师,可惜当时高数白考九十多分。但很感谢当时的高数老师于朝霞教授,讲课讲的真好,所以重新翻看高等数学第六版同济大学编著的微分方程章节时,很快捡起来之前学到的内容。
现在有了matlab,不需要自己手算了,下面记录一下使用matlab求解二阶微分方程的过程。
Matlab版本:2023a
二、Matlab求解二阶常系数微分方程
1、问题描述
二阶常系数微分方程:
y ¨ + 10 y ˙ + 25 y = 250 (1) \begin{aligned} \ddot y+10\dot y+25y=250 \\ \end{aligned}\tag{1} y¨+10y˙+25y=250(1)
二阶微分方程如果没有初始条件,其通解会含有两个任意常数,所以不能完全反应某一客观实物的规律。
这里设置初始条件为:
y ( 0 ) = 15 , y ˙ ( 0 ) = 0 (2) \begin{aligned} y(0)=15, &&\dot y(0)=0 \\ \end{aligned}\tag{2} y(0)=15,y˙(0)=0(2)
2、matlab求解微分方程,并绘制解的曲线
clear; close all; clc;
% 定义符号变量
syms x y(x);% 定义二阶微分方程
eqn = diff(y, x, 2) + 10*diff(y, x) + 25*y == 250;% 设置初始条件
initial_condition1 = y(0) == 0; % 初始值 y(0) = 0
initial_condition2 = subs(diff(y), 0) == 0; % 初始导数值 y'(0) = 0% 求解微分方程
sol = dsolve(eqn, [initial_condition1, initial_condition2]);% 显示解
disp('解:');
disp(sol);% 将解转换为函数句柄
ySol = matlabFunction(sol);% 定义 x 范围
x = linspace(0, 5, 100); % 这里的范围可以根据需要调整% 计算对应的 y 值
y = ySol(x);% 绘制曲线图
figure;
a1 = subplot( 1, 1, 1 );
hold( a1, 'on' );
plot(a1, x, y, 'linewidth', 3, 'color', [0.0000, 0.4470, 0.7410] );
xlabel('x');
ylabel('y');
title('二阶微分方程的解曲线');
scatter( 0, ySol(0), 'filled', 'linewidth', 3, 'markerfacecolor', 'y', 'markeredgecolor', 'k' );
grid on;

3、matlab求解加速度函数,并绘制解的曲线
经过步骤2,其实我们得到的是位置和速度的关系,即解为:
y = − 10 e − 5 x − 50 x e − 5 x + 10 (2) \begin{aligned} y=-10e^{-5x}-50xe^{-5x}+10 \\ \end{aligned}\tag{2} y=−10e−5x−50xe−5x+10(2)
有时我们还需要观察加速度和时间的关系。
因此对公式(2)求二阶导,得到加速度:
y ¨ = 250 e − 5 x − 1250 x e − 5 x (2) \begin{aligned} \ddot y=250e^{-5x}-1250xe^{-5x} \\ \end{aligned}\tag{2} y¨=250e−5x−1250xe−5x(2)
matlab里求解加速度与时间的关系,及画出曲线图:
clear; close all; clc;
% 定义符号变量
syms x;% 定义函数
y = 10 - 50*x*exp(-5*x) - 10*exp(-5*x);% 计算二阶导数
second_derivative = diff(y, x, 2);
% 显示解
disp('二阶导:');
disp(second_derivative);
% 将二阶导数转换为函数句柄
second_derivative_func = matlabFunction(second_derivative);% 定义 x 范围
x_values = linspace(0, 5, 100); % 这里的范围可以根据需要调整% 计算对应的二阶导数值
y_second_derivative = second_derivative_func(x_values);% 绘制二阶导数曲线图
figure;
plot(x_values, y_second_derivative);
xlabel('x');
ylabel('y的二阶导数');
title('y=5*exp(-5*x) + 25*x*exp(-5*x) + 10 的二阶导数曲线');
grid on;

相关文章:
万物皆数——用matlab求解二阶微分方程
一、背景 毕达哥拉斯的“万物皆数”哲学观点表达了一个理念,即宇宙万物都可以通过数学语言来描述,数是万物的本原。 勾股定理就是毕达哥拉斯提出,因此在西方勾股定理也被叫做毕达哥拉斯定理。 工科类的专业,越到后面越感觉到数学…...
jmeter接口自动化部署jenkins教程
首先,保证本地安装并部署了jenkins,jmeter,xslproc 我搭建的自动化测试框架是jmeterjenkinsxslproc ---注意:原理是,jmeter自生成的报告jtl文件,通过xslproc工具,再结合jmeter自带的模板修改&…...
前端js实现将数组对象组装成自己需要的属性,或者去掉对象中不必要的属性
前言 提示:这里可以添加本文要记录的大概内容: 需求:前端js实现将数组对象组装成自己需要的属性,或者前端js实现去掉对象中不必要的属性 提示:以下是本篇文章正文内容,下面案例可供参考 一、示例数组对象…...
MeterSphere 任意文件读取漏洞(CVE-2023-25814)
MeterSphere 任意文件读取漏洞(CVE-2023-25814) 免责声明漏洞描述漏洞影响漏洞危害网络测绘Fofa: title"MeterSphere" 漏洞复现1. 构造poc2. 发送数据包3. 查看文件 免责声明 仅用于技术交流,目的是向相关安全人员展示漏洞利用方式,以便更好地…...
设计模式-01-单例设计模式
经典的设计模式有23种,但是常用的设计模式一般情况下不会到一半,我们就针对一些常用的设计模式进行一些详细的讲解和分析,方便大家更加容易理解和使用设计模式。 1-为什么要使用单例 单例设计模式(Singleton Design Pattern&…...
霍尔电流传感器如何进行可靠性测试?主要应用在哪些领域?
霍尔电流传感器广泛应用于航空航天、电源监测、飞行器状态监测、变速驱动设备、焊接设备供电电源、新能源汽车蓄电池管理系统等领域,在电流检测领域中有着重要地位和实用价值,在电驱系统中被称为新能源汽车的动力“心脏”。因此,霍尔电流传感…...
pandas按行按列遍历Dataframe的三种方式
遍历数据有以下三种方法: 简单对上面三种方法进行说明: iterrows(): 按行遍历,将DataFrame的每一行迭代为(index, Series)对,可以通过row[name]对元素进行访问。 itertuples(): 按行遍历,将DataFrame的每一行迭代为元…...
Api接口如何防止被刷?
现在越来越多的应用程序和服务都提供了API接口,使得开发人员可以方便地与这些应用程序和服务进行交互。但是,由于API接口是公开的,因此很容易被黑客利用,对系统造成损害。为了确保API接口的安全性,我们需要采取一些措施…...
Django——orm模块创建表关系
django orm中如何创建表关系 1. 表关系分析 表与表之间的关系: 一对多 多对多 一对一 没有关系 判断表关系的方法: 换位思考用4张表举例: 图书表 出版社表 作者表 作者详情表图书和出版社是一对多的关系 外键字段建在多的那一方图书和作者是多对多的关系 需要创建第三张表来…...
Django知识点
目录 一、三板斧的使用 二、全局配置文件 三、静态文件的设置 四、request对象的方法 五、pycharm链接数据库 六、Django链接数据库 七、orm介绍 一、三板斧的使用 三个方法: HttpResponse renderredirect def index(request):print(request)return HttpR…...
基于单片机设计的智能风扇(红外线无线控制开关调速定时)
一、项目介绍 在炎热的夏季,风扇成为人们室内生活中必不可少的电器产品。然而,传统的风扇控制方式存在一些不便之处,比如需要手动操作开关、无法远程控制和调速,以及缺乏定时功能等。为了解决这些问题,设计了一款基于…...
k8s报错pause 3.2 解决方案
报错 Failed to create pod sandbox: rpc error: code Unknown desc failed to get sandbox image "k8s.gcr.io/pause:3.2": failed to pull image "k8s.gcr.io/pause:3.2": failed to pull and unpack image "k8s.gcr.io/pause:3.2": failed…...
基于遗传算法的电器分类,基于GA的电器分类
目录 背影 遗传算法的原理及步骤 基本定义 编码方式 适应度函数 运算过程 代码 结果分析 展望 完整代码下载链接:基于遗传算法的电器识别,基于遗传算法的电器分类(代码完整,数据齐全)资源-CSDN文库 https://download.csdn.net/download/abc991835105/88506649 背影 电器…...
某XX自考小程序的AES加密分析
前言 主要是报了自考在这个小程序上面做题,就研究了一下这个接口本文仅供学习交流使用,请勿随意传播。如有侵犯你的权益及时联系我删除。 一、抓包分析打开小程序,打开devtools 工具,这里就不啰嗦,直接上过程。 点击…...
加密算法笔记
MD5: 目前相对容易破解,且容易发生碰撞; 不可逆(但是网络上有很多破解方法) SHA256: 不会碰撞; 可以加盐,也可以不加盐; 不可逆; HmacSHA256在线加密-HmacMD5加密-散列哈希HASH加密工具 相同点 1、都是密码散列函数,加密不可逆。 2、都可…...
Sa-Token拦截全部接口必须登录-然后自定义注解来匿名登录-作为权限框架支持,并且同时使用了注解和路由的拦截器模式,此部分的配置如下:
场景 在博主目前正在开发的项目中,就采用了Sa-Token作为权限框架支持,并且同时使用了注解和路由的拦截器模式,此部分的配置如下: Override public void addInterceptors(InterceptorRegistry registry) { List<String> n…...
公司企业端口映射
文章目录 前言如何进行内网映射打开路由器管理网址设置端口映射 前言 公司为了提供稳定的网络服务,需要拥有一个稳定的IPV4的网络地址,一般公司有点规模的,会去电信局里面拉一根专门的网线,获取稳定的全球IPV4地址。 一个IPV4地…...
gitlab安装和使用
gitlab安装和使用 1.下载必要的依赖 sudo yum install curl openssh-server openssh-clients postfix cronie #需要执行sudo service postfix start #配置邮箱的sudo chkconfig postfix on #配置邮箱的#这句是用来做防火墙的,避免用户通过ssh方式和http来访问。su…...
【论文阅读】DALL·E: Zero-Shot Text-to-Image Generation
OpenAI第一代文本生成图片模型 paper:https://arxiv.org/abs/2102.12092 DALLE有120亿参数,基于自回归transformer,在2.5亿 图片-文本对上训练的。实现了高质量可控的text to image,同时也有zero-shot的能力。 DALL-E没有使用扩…...
说一下 toRef、toRefs,以及他们的区别
toRef:创建一个新的Ref变量,转换Reactive对象的某个字段为Ref变量 toRefs:创建一个新的对象,它的每个字段都是Reactive对象各个字段的Ref变量 说一下toRef 先定义一个reactive对象 interface Member {id: numbername: string } c…...
后进先出(LIFO)详解
LIFO 是 Last In, First Out 的缩写,中文译为后进先出。这是一种数据结构的工作原则,类似于一摞盘子或一叠书本: 最后放进去的元素最先出来 -想象往筒状容器里放盘子: (1)你放进的最后一个盘子(…...
linux之kylin系统nginx的安装
一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…...
智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...
QMC5883L的驱动
简介 本篇文章的代码已经上传到了github上面,开源代码 作为一个电子罗盘模块,我们可以通过I2C从中获取偏航角yaw,相对于六轴陀螺仪的yaw,qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...
Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...
Objective-C常用命名规范总结
【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名(Class Name)2.协议名(Protocol Name)3.方法名(Method Name)4.属性名(Property Name)5.局部变量/实例变量(Local / Instance Variables&…...
用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
QT: `long long` 类型转换为 `QString` 2025.6.5
在 Qt 中,将 long long 类型转换为 QString 可以通过以下两种常用方法实现: 方法 1:使用 QString::number() 直接调用 QString 的静态方法 number(),将数值转换为字符串: long long value 1234567890123456789LL; …...
有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
管理学院权限管理系统开发总结
文章目录 🎓 管理学院权限管理系统开发总结 - 现代化Web应用实践之路📝 项目概述🏗️ 技术架构设计后端技术栈前端技术栈 💡 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 🗄️ 数据库设…...
