Matlab: precisa de ajuda para uma vetorização aparentemente simples de uma operação
Gostaria de otimizar esse código do Matlab, mas até agora falhei. Eu tentei combinações diferentes de repmat e somas e cumsums, mas todas as minhas tentativas parecem não dar o resultado correto. Gostaria de receber algumas orientações de especialistas sobre esse difícil problema.
S=1000; T=10;
X=rand(T,S),
X=sort(X,1,'ascend');
Result=zeros(S,1);
for c=1:T-1
for cc=c+1:T
d=(X(cc,:)-X(c,:))-(cc-c)/T;
Result=Result+abs(d');
end
end
Basicamente, crio 1000 vetores de 10 números aleatórios e, para cada vetor, calculo para cada par de valores (digamosmth e onth) a diferença entre eles, menos a diferença (n-m) Soma-me dos pares possíveis e retorno o resultado para cada vetor.
Espero que esta explicação seja clara,
Muito obrigado antecipadamente.