Simulink的MATLAB function使用
note 2021-02-21 下面的文章来自我的公众号 yhm同学
note 2021-04-01 今天审稿,发现存在着一些我没有发现的错误,但是我不想修改了。
原文链接 https://mp.weixin.qq.com/s/J5nmK4Z9ImC3fRKqutXH5g
写个很简单的东西,可以说是备忘录
引子
这里打算用Simulink仿真一个常微分方程和初始条件描述的系统
\(x, \dot{x}, \ddot{x}\) 是研究的变量
\]
变参数 \(F, m, T\)
F=\left\{\begin{array}{rl}
-0.4\dot{x}^{2} & \dot{x}>0 \\
0.4 \dot{x}^{2} & \dot{x}<0 \\
0 & \dot{x}=0
\end{array}\right. \\
m=\left\{\begin{array}{rl}
1400-18 t & 0<t \leq 60 \\
320 & t>60
\end{array}\right. \\
T=\left\{\begin{array}{rr}
32000 & 0<t \leq 60 \\
0 & t>60
\end{array}\right.
\end{array}
\]
其中\(t\) 是仿真时间
初始条件
\]
matlab仿真
feixiang.m
k=0.4;g=9.8;m0=1400;T=32000;
x0=[0,0];
ts=0:1:100;
[t,x]=ode45('huojian',ts,x0);
[t,x(:,1)]
a=[t,x];
x40=a(61,2)
v40=a(61,3)
a40=-(k/320)*v40^2+T/320-g
xmax=max(x(:,1))
subplot(2,1,1),plot(t,x(:,1)),title('altitude')
subplot(2,1,2),plot(t,x(:,2)),title('speed')
huojian.m
function y=huojian(t,x)
k=0.4;g=9.8;m0=1400;T=32000;m=m0-18*t;
if t>60
T=0;
m=320;
end
y=[x(2),-(k/m)*x(2)^2+T/m-g]';

Simulink仿真
嗯找了篇博客照着样子搭就行了

可能有用?当时用ctrl shift L 来快速打开Library Browser
.slx源文件传到坚果云了.你需要一个坚果云账号来access.
仿真结果



参考
如何在博客园中插入视频、音频、网页
html视频自动播放(iframe)及不自动播放(video)
HTML 标签的 height 和 width 属性
simulink建模之求解微分方程
Streamja - Simple video sharing,不好用,差评
Simulink的MATLAB function使用的更多相关文章
- Calling Matlab function from python: “initializer must be a rectangular nested sequence”
I am writing a python script from which I hope to call the Matlab anovan function. I have attempted ...
- Matlab function lorenzgui
function lorenzgui %LORENZGUI Plot the orbit around the Lorenz chaotic attractor. % This function an ...
- matlab之simulink仿真入门
Matlab Simulink仿真工具的应用 ****Simulink是一个用来对动态系统进行建模.仿真和分析的软件包.使用Simulink来建模.分析和仿真各种动态系统(包含连续系统.离散系统和混合 ...
- 以神经网络使用为例的Matlab和Android混合编程
由于需要在一个Android项目中使用神经网络,而经过测试发现几个Github上开源项目的训练效果就是不如Matlab的工具箱好,所以就想在Android上使用Matlab神经网络代码(可是...) ...
- 【转】Install MATLAB 2013a on CentOS 6.4 x64 with mode silent
首先要下载安装光盘. Matlab801_MacUnix.iso [root@db-172-16-3-150 mnt]# md5sum /ssd1/Matlab801_MacUnix.iso 0d3 ...
- 调试和运行matlab代码(源程序)的技巧和教程
转载请标明出处:专注matlab代码下载的网站http://www.downma.com/ 本文主要给大家分享使用matlab编写代码,完成课程设计.毕业设计或者研究项目时,matlab调试程序的技巧 ...
- Simulink 产品说明
Simulink 产品说明 仿真和基于模型的设计 Simulink® 是一个模块图环境,用于多域仿真以及基于模型的设计.它支持系统级设计.仿真.自动代码生成以及嵌入式系统的连续测试和验证.Simuli ...
- 图像对比度调整的simulink仿真总结
图像对比度调整可以由一个模块contrast adjustment 完成,参数有输入范围和输出范围,计算过程由以下公式决定 解释一下,当input<=low_in的时候输出的值是low_out+ ...
- Simulink仿真入门到精通(十八) TLC语言
TLC(Target Language Compiler)是一种为转换为目标语言而存在的额解释性语言,其目的就是将模型中编译出来的rtw文件转换为目标代码(C/C++等).与M语言类似,既可以写成脚本 ...
- Simulink仿真入门到精通(十四) Simulink自定义环境
14.1 Simulink环境自定义功能 sl_sustomization.m函数是Simulink提供给用户使用MATLAB语言自定义Simulink标准人机界面的函数机制.若sl_sustomiz ...
随机推荐
- 更改NX TITLE为路径
#include<iostream>#include <conio.h>#include <math.h>#include <stdio.h>#incl ...
- 冰冻三尺非一日之寒,记录Java
一.数据类型 Java是一种强类型语言,什么是强类型语言? 强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用 Java的数据类型又分为两大类: 1.基本类型:基本类型有分为数值 ...
- .NET Core使用 Coravel 实现任务调度
前言 前段时间需要在一个新项目里添加两个后台任务,去定时请求两个供应商的API来同步数据:由于项目本身只是一个很小的服务,不太希望引入太重的框架,同时也没持久化要求:于是我开始寻找在Quartz.Ne ...
- 使用python+poco+夜神模拟器进行自动化测试。
https://blog.csdn.net/saint_228/article/details/84889017 网易最近出的一款自动化UI测试工具:Airtest 挺火的,还受到谷歌的推荐.我试着用 ...
- 对synchronized的理解和Spring为什么是单例的
只有真正理解了Java中对象是什么,才能理解这个关键字是什么意思 字面解释 Java Guide中如此解释: synchronized 关键字解决的是多个线程之间访问资源的同步性,synchroniz ...
- React++antd+ProComponents可编辑表格EditableProTable组件实现表单中的可编辑列表组件
需求: 在新增&编辑表单中,共分三个表单模块,第二个模块设计为一个可编辑表格组件,其中可选下拉列表依赖外层第一个模块的某条数据值,提供新增.编辑.删除.按规定条件去重等功能,并在第三个模块中自 ...
- Spring系列之资源-11
目录 `Resource` 内置`Resource`实现 `UrlResource` `ClassPathResource` `FileSystemResource` `ServletContextR ...
- uniapp中使用AntV F6 + table表格插件使用
首先看页面效果: AntV官网下载F6文件到项目中与uViewUI插件 <template> <view class="page"> <!-- 导航栏 ...
- Oracle学习-----基本SQL select语句
一.基本select语句 SELECT 标识 选择那些列 FROM 标识从哪个表中选择 select * 标识 全部选择 select department_id, location_id ...
- setter注入--简单类型
UserDaoImpl中的代码,实现对name和age的注入 private String name; private int age; public void setName(String name ...