待解决问题
simulink数组问题:什么样的输入数组是二维的? (进入论坛模式)
离问题结束还有0天0小时 |
提问者:新手程序猿
|
提问时间:2013-6-17 19:35
本意是产生一个1024*11的二维数组,将此二维数组保存为.mat文件,通过From File模块读入simulink的某一个模块后,选取某一列(11个元素)输出。现在第一行加入了时间标签,即0~1023,但这种情况下貌似就被认为是一维数组了,作为二维数组调用时报错,说调用的是输出为11个元素的一维数组。
请问二维数组应该怎么保存?
请问二维数组应该怎么保存?
问题答案 ( 5 条 )
用from file
格式:第1行为时间标签,第2~12行为对应输出的数据
你可以把你保存的mat文件load之后,看是否和格式一样
另外你的时间标签起点要和simulink仿真起点的值一致
格式:第1行为时间标签,第2~12行为对应输出的数据
你可以把你保存的mat文件load之后,看是否和格式一样
另外你的时间标签起点要和simulink仿真起点的值一致
看错你的问题了,输出二维矩阵没用过
笨办法一个:可以把二维矩阵转成一维矩阵,用from file输出后,在simulink里面再转成二维的就行了
笨办法一个:可以把二维矩阵转成一维矩阵,用from file输出后,在simulink里面再转成二维的就行了
第一行是以1为起始点递增的时间,下面几行就是数据了。.mat导入看了也对。。。就是from file时是以时间为单位读入一列数据,会把这一列作为一维数组。我都准备手动整进来了。。。:'(
正有此意。。。唉,笨办法就是累点。。。:lol
from file只能加载mat文件,from workspace只能加载工作空间的数据,
保存成mat再读取数据的话,有点麻烦需要你在保存时保存成3维数组,1维为时间,另外两维为数据;
另外一种方法你先将文件加载到workspace中,然后用signal from workspace输出一个11*1024的一位数组,然后再用reshape将其变为11*1024就可以了
保存成mat再读取数据的话,有点麻烦需要你在保存时保存成3维数组,1维为时间,另外两维为数据;
另外一种方法你先将文件加载到workspace中,然后用signal from workspace输出一个11*1024的一位数组,然后再用reshape将其变为11*1024就可以了