Here is what i tried:
variant1:
forcp = zeros(3,1);
forcp = @parallel (hcat) for partA = 1:nPart
for partB = (partA+1):nPart
...
end
forcp = forces[:,partA];
end
variant2:
function calcforces(coords,L,np,i) # with np... number of processes i...
current process
for partA = i+1:np:nPart-1
for partB = (partA+1):nPart
...
return forces
end
np = nprocs();
parad = Array(RemoteRef,np);
and then calling function calcforces with:
for i=1:np parad[i] = @spawn LJ_Force_MT(coords,L,np,i); end
for i=1:np forces = fetch(parad[i]); end
both ways are giving me wrong results over more than 1 timestep