matlab from有什么用,Matlab函数使用'fromworkspace'将向量传递给simulink
我想编写一个包含simulink块的matlab函数 . 该函数应将数据加载到simulink模型中,运行它,然后从函数返回数据 .
我能想到的唯一方法就是在simulink中使用'To Workspace'和'From Workspace'块 . 问题是'From Workspace'块不从功能范围中获取变量,只从工作空间范围中获取变量 .
下面是我能想到的唯一解决方案,它基本上将传入的向量转换为字符串,然后创建一个在模型启动时被调用的函数(实际上这与eval一样糟糕) .
这是代码:
function [ dataOut ] = run_simulink( dataIn )
% Convert data to a string (this is the part I would like to avoid)
variableInitString = sprintf('simin = %s;', mat2str(dataIn));
% we need both the name and the filename
modelName = 'programatic_simulink';
modelFileName = strcat(modelName,'.slx');
% load model (without displaying window)
load_system(modelFileName);
% Set the InitFcn to the god awful string
% this is how the dataIn actually gets into the model
set_param(modelName, 'InitFcn', variableInitString);
% run it
sim(modelName);
% explicity close without saving (0) because changing InitFcn
% counts as changing the model. Note that set_param also
% creates a .autosave file (which is deleted after close_system)
close_system(modelName, 0);
% return data from simOut that is created by simulink
dataOut = simout;
end
你运行它是这样的: run_simulink([0 0.25 0.5 0.75; 1 2 3 4]') 矩阵的第一部分是时间向量 .
最后,这是底层的simulink文件,其工作区块属性打开以保证完整性 .
(如果图像模糊,点击放大)
如果没有 mat2str() 和 sprintf() ,有没有更简洁的方法呢? sprint 行需要永远运行,即使是大小为50k的向量也是如此 .
matlab from有什么用,Matlab函数使用'fromworkspace'将向量传递给simulink相关推荐
- matlab实战中一些重要的函数总结
这段时间看了一些大型的matlabproject文件(如:faster r-cnn),对于project中常常要用到的一些函数进行一个总结. 1.路径问题. 这主要涵括文件路径的包括和组合. curd ...
- 【数字信号处理】卷积编程实现 ( Matlab 卷积和多项式乘法 conv 函数 | 使用 matlab 代码求卷积并绘图 )
文章目录 一.Matlab 卷积和多项式乘法 conv 函数 二.使用 matlab 代码求卷积并绘图 一.Matlab 卷积和多项式乘法 conv 函数 Matlab 文档地址 : https:// ...
- MATLAB实现最优低通滤波器的函数
MATLAB实现最优低通滤波器的函数 % Fs --Data rate % Fpass --pass band % Fstop --Cutoff frequencies % Apass ...
- MATLAB实用知识,如何对函数的输入进行检查和解析?
为什么要对函数的输入进行检查 在工程计算中,如果一个函数的输入有错误,我们总是希望能够尽早的通过对输入的检查,捕捉到这些错误,并及时终止程序.这样做的原因是,如果等到程序运行时出错或者运行结束后计算结 ...
- 2021-02-23 Matlab数据导入--importdata和load函数
Matlab数据导入--importdata和load函数 importdata和load函数 1.引言 在使用matlab将数据导入到工作空间的时候,经常会使用到两个函数,一个是importdata ...
- Matlab内置的矩阵反转函数
发现了两个Matlab内置的矩阵翻转函数: flipud 上下反转 up - down fliplr 左右反转 left - right 来张图像试一下: girl = imread('girl-bo ...
- matlab语言中的assert断言函数
1.MATLAB语言没有系统的断言函数,但有错误报告函数 error 和 warning.由于要求对参数的保护,需要对输入参数或处理过程中的一些状态进行判断,判断程序能否/是否需要继续执行.在matl ...
- matlab 求n 的和,MATLAB求1的阶乘加到n的阶乘和 不要现有的函数,要自己编写出来的...
点击查看MATLAB求1的阶乘加到n的阶乘和 不要现有的函数,要自己编写出来的具体信息 答:myfactorial = @(n) factorial(n) myfactorial = @(n) pro ...
- matlab在命令行和脚本,MATLAB学习笔记—函数与脚本
函数-Function MATLAB自带了丰富的函数,当然我们也可以自定义函数来实现自己想要的功能. 比如:rand(3,4) 就能生成3×4的数表,每个数在0~1之间. 输入edit编辑新文件 fu ...
最新文章
- 对Oracle中索引叶块分裂而引起延迟情况的测试和分析
- pku 2954 Triangle pku 1265 Area Pick定理的应用 + 叉积求多边形面积
- Android Studio对于Java8特性的支持
- ios did receive memory warning
- oracle集群数据库事务配置,在 .NET中使用Oracle数据库事务-安装配置-Oracle频道-中国IT实验室...
- [摘录]第10章 培养胜过对手的力量
- 刷爆了!国企33岁程序员年入40w,直言:想降薪进阿里钻研技术
- 中关村程序员的 996 强制加班与工作效率成正比吗?
- 将谷歌浏览器设置为黑色主题背景 超酷炫黑
- lis中hl7接口 java_hl7接口开发商中文使用手册
- 阿里云OSS配制域名及SSL证书教程
- 人脸识别-驾驶疲劳检测(1) 眨眼检测
- Python身体质量指数BMI
- while(true) Thread.Sleep(XX)我通常是用这种写法,有没有更好的写法或者改进
- 高并发其实挺容易的,当你明白了一万并发的原理,然后扩展到百万、千万、亿万级很easy
- 10G PON 进入到全面部署阶段
- 最新Mybatis插入数据返回自增主键详细配置
- DGIOT智慧园区/智慧场馆数字驾驶舱
- 纯小白操作淘宝C店的第一天
- Hexo博客框架的搭建与使用
热门文章
- 数学差、物理差、英语又烂的放牛娃,后来竟成了清华校长,还做出了诺奖级的研究成果!...
- 导师什么时候会放弃学生?
- 4位院士的4个正确决定,成功扭转疫情!建议人人都该知道
- 如何应对视觉深度学习存在的问题
- 高铁上的排泄物都哪里去了,真的是“一泻千里”吗?
- 盘点那些有“数学味”的建筑
- kafka中topic默认属性_分享:Kafka 的 Lag 计算误区及正确实现
- 多任务学习模型之ESMM介绍与实现
- RebatesMe:返利网站DDOS防护
- AI技术的“践行者” — 云测试成为企业降本增效利器