2016-05-22 7 views
0

Matlabで次のコードを使用している場合、並列ループを実行するためにst3マトリックスでインデックスを修正するにはどうすればよいですか?ありがとうございますMatlabで並列ループを使用する方法

n=1; 
parfor j=1:10 
[~,x1]=compare2Arrays(st1,st2); 
    if isempty(x1) 
     st3(n)=st4(j); 
     n=n+1; 
    end 
end 

答えて

1

ループが順番に実行されないためです。あなたはそれのようにnを使用することはできません。ここに更新されたコードがあります。

n=1; 
st5=nan(1,10); 
parfor j=1:10 
[~,x1]=compare2Arrays(st1,st2); 
    if isempty(x1) 
     st5(j)=st4(j); 
    end 
end 
st3=st5(not(isnan(st5))); 
関連する問題