通信人家园

标题: simulink数组问题:什么样的输入数组是二维的?  [查看完整版帖子] [打印本页]

时间:  2013-6-17 19:35
作者: 新手程序猿     标题: simulink数组问题:什么样的输入数组是二维的?

    本意是产生一个1024*11的二维数组,将此二维数组保存为.mat文件,通过From File模块读入simulink的某一个模块后,选取某一列(11个元素)输出。现在第一行加入了时间标签,即0~1023,但这种情况下貌似就被认为是一维数组了,作为二维数组调用时报错,说调用的是输出为11个元素的一维数组。
    请问二维数组应该怎么保存?

补充内容 (2013-6-19 15:38):
手误,是要读入11*1024的二维数组。。。
应该用from file还是from workspace?有什么格式要求?
时间:  2013-6-20 08:51
作者: dzwangjin

用from file
格式:第1行为时间标签,第2~12行为对应输出的数据
你可以把你保存的mat文件load之后,看是否和格式一样
另外你的时间标签起点要和simulink仿真起点的值一致
时间:  2013-6-20 08:56
作者: dzwangjin

看错你的问题了,输出二维矩阵没用过
笨办法一个:可以把二维矩阵转成一维矩阵,用from file输出后,在simulink里面再转成二维的就行了
时间:  2013-6-20 17:24
作者: 新手程序猿

dzwangjin 发表于 2013-6-20 08:51
用from file
格式:第1行为时间标签,第2~12行为对应输出的数据
你可以把你保存的mat文件load之后,看是否 ...

第一行是以1为起始点递增的时间,下面几行就是数据了。.mat导入看了也对。。。就是from file时是以时间为单位读入一列数据,会把这一列作为一维数组。我都准备手动整进来了。。。
时间:  2013-6-20 17:25
作者: 新手程序猿

dzwangjin 发表于 2013-6-20 08:56
看错你的问题了,输出二维矩阵没用过
笨办法一个:可以把二维矩阵转成一维矩阵,用from file输出后,在sim ...

正有此意。。。唉,笨办法就是累点。。。
时间:  2013-6-20 19:06
作者: hq476

from file只能加载mat文件,from workspace只能加载工作空间的数据,
保存成mat再读取数据的话,有点麻烦需要你在保存时保存成3维数组,1维为时间,另外两维为数据;
另外一种方法你先将文件加载到workspace中,然后用signal from workspace输出一个11*1024的一位数组,然后再用reshape将其变为11*1024就可以了




通信人家园 (https://www.txrjy.com/) Powered by C114