【问题标题】:Using for-loop to generate vectors in Octave/Matlab在 Octave/Matlab 中使用 for 循环生成向量
【发布时间】:2015-03-12 06:53:43
【问题描述】:

我正在编写一个用于生成向量和 n 阶希尔伯特矩阵的脚本,其中向量 x0 应根据矩阵的大小改变其大小。但是有一条错误消息说'operator *:nonconformant arguments(op1 is 2x2,op2 is 12x1)' 请问为什么矩阵的大小无法成功更改,而我的向量运行良好?

for k=2:12

  H = hilb(k);
  x0(1:k)=1;
  b = H * x0'; %generate the n-vector b=Hx0
  x_approx = GE(H,b);
end

【问题讨论】:

    标签: matlab matrix vector octave


    【解决方案1】:

    问题在于向量和线

    x0(1:k)=1;
    

    k = 2不会改变向量的大小。相反,它将x0 的第一个k 元素设置为1。我假设x0 已经在其他地方设置为12 维向量。

    你可以试试

    x0 = ones(1,k);
    

    改为。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多