时间循环 - 将矢量数据存储在文件中而不会覆盖

时间:2014-02-25 00:22:38

标签: matlab vector save iteration

在我的MATLAB代码中,我想保存所有向量的迭代数据,其中一个在每个时间步长循环中重新计算(取决于时间)。我很困惑,试图找到最好的方法来做到这一点。我试图保存在mat文件中,但我只得到最后一个值。我必须制作一个矩阵吗?并将我的向量(1行-100列)保存到每一行?那么,我必须在这个矩阵中拥有行的最大时间步长?还有其他解决办法吗?

1 个答案:

答案 0 :(得分:1)

mat文件不能包含两个具有相同名称的变量。您需要为每个迭代中保存的变量赋予一个新名称,否则它只是覆盖mat文件中同名变量。

最简单的方法是使用MATLAB结构的动态字段名语法,使用名称中的迭代索引在结构中创建新字段。然后可以使用save的{​​{1}}选项将此字段直接保存到mat文件(没有父结构)。

-struct