Явное зацикливание обычно будет медленным по сравнению с векторными операциями. В этом случае вы можете сделать:
x=0;y=0;
tic
for i =1:200
for j =1:200
result=[x+(1:1000)*i; y+(1:1000)*j];
x=x+1000*i;
y=y+1000*j;
sum(result); % or other operations, just for example
end
end
toc
Редактировать: В вашем пересмотренном примере выполните явное обновление вместо построения вектора и назначения среза:
result = zeros(2, 1000);
x=0;y=0;
tic
for i =1:200
for j =1:200
for k =1:1000
x=x+x/2+2*y; y=y+x*y/2;
result(1, k) = x;
result(2, k) = y;
end
sum(result); % or other operations, just for example
end
end
toc