【问题标题】:Augmenting matrix rows iteratively with answers用答案迭代地增加矩阵行
【发布时间】:2014-10-22 00:00:33
【问题描述】:

每当 MATLAB 中的迭代循环从 fsolve 函数产生答案时,我都会尝试向矩阵添加一行。

假设 fsolve 产生答案 3 和 2(2 个元素),然后我想将它们添加到 1x2 矩阵中。

在第二个循环后,fsolve 产生答案 5 和 3(2 个新元素),我想将它们添加到旧解决方案矩阵中,但作为新行添加,以便新矩阵是 2x2 矩阵。

一直如此。

有什么想法吗?

【问题讨论】:

标签: matlab matrix


【解决方案1】:

您也可以使用end 向矩阵添加额外的列,因此A(:,end+1) = [x1; x2]; 向矩阵A 添加额外的列。这当然也适用于行。

【讨论】:

    【解决方案2】:

    增强:

    循环之前:

    A = [];
    

    在循环中,例如:

    A = [A; 3 2];
    

    如果您知道要运行循环多少次,更好的方法是预先分配数组。

    例如,

    A = zeros(n,2);
    A(i,:) = [3 2];
    

    【讨论】:

      猜你喜欢
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      • 2014-01-03
      • 1970-01-01
      • 1970-01-01
      • 2014-04-20
      • 2016-12-25
      • 1970-01-01
      相关资源
      最近更新 更多