1

是否可以切片第 3 行 (tt)?这段代码被简化了,但问题是相似的。我在数组索引中使用了乘法迭代器 (3*i),但是它不起作用。也许有可能以某种方式改变它。

parfor i = 1 : NE      
   tmp = i * [1, -1; -1, 1];                 
   tt(3*i-1:3*i+1) = tmp([3,2,4]);          
   pp(i) = tmp(1,1,i);   
end;

谢谢 :)

4

1 回答 1

0

要成为切片输出变量tt必须仅使用循环变量i和其他常数项(包括:)进行索引。也许您可以制作tt矩形,一次分配一整列,然后再重新整形,如下所示:

tt = zeros(3, 10);  
parfor ii = 1:10
  tt(:, ii) = [ii; ii; ii];
end
tt = reshape(tt, 1, numel(tt));
于 2013-04-03T07:34:54.903 回答