我怎么能读结构组件到仿真软件吗?万博1manbetx

8视图(30天)
我有一个数据文件,给我300 +变量(每个变量是一个列向量),我想访问模型。万博1manbetx数据结构以下列方式:
foo酒吧巴兹α赌等等……
12 6等等
18日15
72年8
……
因为有很多变量,我想在仿真软件访问,我想顺序生成的变量在某种程度上,我有一个列向量的foo = [12; 18; 72;…万博1manbetx],酒吧= [6;15;8;…),所有的变量。谷歌搜索显示顺序生成的变量是一个大错误。但是,我找到其他几个人问它和普通决议是这些值读入结构、字段名称的第一行和字段值的行。我做了,所以现在我有一个与所有300 +结构变量,并在Matlab可以访问它们mystruct类型。栏显示栏的值的列。
在Matlab这工作得很好,但我找不到一个好方法在仿真软件中访问这些值。万博1manbetx我试着使用常数阻塞和工作区,每次我得到一个错误,通常不被发现(mystruct相关变量。foo是我把作为数据的名字),没有正确的格式或结构。我发现一些地方,说我的结构需要.time参数,和.singals结构包含一个. values参数,但我不确定我如何工作,到目前为止我有事情的方式格式化。
我最初创建每个变量通过搜索的初始数据文件的索引词“foo”,然后设置foo =所有下面的行条目,但这是乏味的和不现实的考虑有多少变量。我不一定要有数据结构,但我需要一种方法来将我所有的数据读取的数据文件。结构的方法似乎是最好的方式,我发现实现这一目标,作为循环创造了两个完整的结构。那么最后一个问题是我需要某种方式访问数据的仿真软件。万博1manbetx与我原来的单独创建每个变量的方法,我将负载变量通过一个常数,然后喂变量变成一个Matlab函数块接受一个向量和输出一个条目用于仿真。
我欣赏有什么想法在这个问题上,我打开重组(或解构?)我的数据读取和处理的方式。

接受的答案

爱默生巴特勒
爱默生巴特勒 2018年12月18日
一个同事向我指出,我的结构是建立在这样一种方式字段是细胞向量。改变双向量然后让我使用仿真软件“常数”,不断将mystruct.bar。万博1manbetx我可以喂成一个索引块和阅读每个值一次仿真软件。万博1manbetx然后,它看起来有点像这样:
[m, n] =大小(CellArray);%单元阵列字段值
指数= 1:m
index2 = 1: n
DoubleMatrix(指数、index2) =双(string (CellArray{指数,index2}));%不能直接从细胞转化成双
结束
结束
指数= 1:n
mystruct。(myFieldNames{指数})= DoubleMatrix(:,指数);
结束

更多的答案(0)

类别

找到更多的在基于组件的建模帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!