利用ode45求解含控制量并且控制量为离散点的动力学方程
1、写出微分方程函数2、求解
function dy=rigid(t,y)
dy=zeros(3,1);
dy(1)=y(2)*y(3);
dy(2)=-y(1)*y(3);
dy(3)=-0.51*y(1)*y(2);
end
%将微分方程写成函数形式,待调用
options=odeset('RelTol',1e-4,'AbsTol',[1e-4 1e-4 1e-5]);
[T Y]=ode45(@rigid,[0 12],[0 1 1],options);
plot(T,Y(:,1),'-',T,Y(:,2),'*',T,Y(:,3),'.');
%[0 12]是时间跨度[0 1 1]是初始值,值得注意的是求出的Y为矩阵,画图调用时要注意
在实际的动力学方程中会涉及控制量,而微分方程只是计算状态量,因此计算时需要输入控制量的时间函数,但另一个问题我们计算得到的优化控制量大多时候是离散点,这些点可以拟合或插值得到随时间的函数。
function dydt = myode(t,y,ft,f,gt,g)
%UNTITLED2 ft是f所对应的时间节点,gt是g对应的时间节点,首先对控制量进行插值
% 此处显示详细说明
f=interp1(ft,f,t);
g=interp1(gt,g,t);
dydt=-f.*y+g;
end
%y是状态量,f和g为两个控制量,微分方程写为函数形式调用
clc;clear;close;
%% 控制量数据点
ft=linspace(0,5,25);
f=ft.^2-ft-3;
gt=linspace(1,6,25);
g=3*sin(gt-0.25);
%% 计算,注意@函数句柄调用形式
Tspan=[1 5];%时间跨度
Iy=1;%初始值
[T,Y]=ode45(@(t,y) myode(t,y,ft,f,gt,g),Tspan,Iy);
plot(T,Y);
利用ode45求解含控制量并且控制量为离散点的动力学方程相关推荐
- 【Matlab 控制】微分方程 ode45() 求解并绘制曲线
Matlab 微分方程 ode45 求解并绘制曲线 2. 用 ode45() 求解 2.1 ode45() 函数用法 2.2 示例:求解一阶微分方程 2.2.1 Matlab 代码如下 2.2.2 代 ...
- 利用Office加载项进行持久化控制的6种姿势
本文讲的是利用Office加载项进行持久化控制的6种姿势,现在,几乎所有用户都会使用Microsoft Office,它的普及率这么高,以至于攻击者经常会用它来实施大规模攻击. 本文就将为大家介绍通过 ...
- 利用Kinect实现用指尖隔空控制鼠标(源码放出)
简介 此程序为利用Kinect实现用手指隔空控制鼠标,是我另一个项目的一部分,因为在另外那个项目中鼠标的click是通过一种特殊的方式实现的,因此这个程序只实现了用手控制鼠标的移动,并没有点击的功能. ...
- 4-20ma和0-5v模拟量无线传输点对点无线采集控制解决方案io开关量信号无线远程控制解决方案
ZKA-4088-LORA: 4路模拟量输入+8路开关量输入+8路开关量输出. ZKA-8088-LORA: 8路模拟量输入+8路开关量输入+8路开关量输出. ZKA-4488-LORA: 4路模拟量 ...
- 200Smart模拟量变频器控制应用
200Smart模拟量变频器控制应用 一.变频器控制 1.开关量多段速 2.模拟量控制 PLC输出0-10V或者0-20mA控制变频器的频率为0-50HZ 给PLC0-27648,PLC会输出标准模拟 ...
- 智慧农业自动打药及水肥一体远程无线自动化控制方案远程开关量继电器电磁阀水泵控制模拟量4-02ma控制压力液位无线采集控制
智慧农业自动打药及水肥一体远程无线自动化控制方案 项目背景 园打药是果园管理者比较烦恼的事情,特别是三年以上的果树株距行距都封行,人工或机器打药都很困难,目前大部分果园仍然停留在非常落后的人工打药即一 ...
- Azure Terraform(九)利用 Azure DevOps Pipeline 的审批来控制流程发布
Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.csdn.net/cou ...
- S7-200 SMART PLC模拟量阀门控制功能块(FB)
200 SMART PLC数字量阀门控制功能块(FB),可以参看下面这篇专栏: S7-200 SMART PLC 阀门控制功能块(FB)汇总_RXXW_Dor的博客-CSDN博客S7-200 SMAR ...
- 西门子Siemens PLc自动配料称重系统,托尼多称,modbus通讯,变频器控制,温度模拟量处理,Pid控制,配料重量处理
西门子Siemens PLc自动配料称重系统,托尼多称,modbus通讯,变频器控制,温度模拟量处理,Pid控制,配料重量处理,博途V14 V15 V16,V17版 ID:38156735203482 ...
- VF控制和矢量控制的一些区别
我是做变频器开发的一线人员,有过完整的针对三相异步电机和永磁同步电机变频器开发经历,产品也在市场上卖,学历方面,在国内正规学校拿到了电机工程的博士学位(无炫耀之意,只是说明在这个领域比较熟悉),陈伯实 ...
最新文章
- [bzoj2400]Optimal Marks
- 产品经理被首杀一万次的真相?CTO怼天怼地的原因?市场妹子缘何咆哮?欢迎走近这局互联网狼人杀~...
- Spring Boot 集成AOP
- POSIX线程的同步
- 【数据结构】树状数组详解(Leetcode.315)
- 机器学习文献中的英文(part1)
- 前端学习(517):两列布局的第三种解决方案的优缺点
- Codeforces #471
- Mac上的一位数密码你知道吗
- linux read line,LINUX readline 库的使用,,
- 磁盘阵列——RAID0制作方法
- hdu5334(2015多校4)--Virtual Participation(构造)
- rabbitmq安装centos7
- three.js 求两个vector3 的夹角_初中数学:动点问题-阿氏圆最值模型(2),求PD-1/2PC的最大值...
- [E]PSM算法简析
- 3. 说清 Observable
- 支持HEVC格式的浏览器推荐(windows 10)
- 有一分数序列:2/1,3/2,5/3...求出这个数列的前20项之和(C语言原理详解)。
- contos7 配置 python3环境 支持微信公众号开发
- Mall商城的高级篇的开发(三)缓存与分布式锁
热门文章
- linux版高德导航软件下载,高德导航下载2021年最新版本_高德导航2021手机版下载-太平洋下载中心...
- 360P2建html网站,如何自己建网站
- 震网蠕虫中的一个Bug差点令其“出师未捷身先死”
- 金蝶K3线上采购价格审批生效系统开发
- 牛客java选择题每日打卡Day9
- 两个域名指向同一服务器的非80端口
- Jquery获取选中 的TR元素 和 子元素td
- r730 raid5 linux 驱动,DELL R720安装REDHAT5.1 RAID驱动问题
- html5遮罩层动画制作,纯css3图片点击弹出动画遮罩层效果
- 反向代理软件之HAproxy基础