Matlab: necesita ayuda para una vectorización aparentemente simple de una operación
Me gustaría optimizar esta parte del código de Matlab, pero hasta ahora he fallado. He intentado diferentes combinaciones de repmat y sumas y corridas, pero todos mis intentos parecen no dar el resultado correcto. Agradecería alguna orientación experta sobre este 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
Básicamente creo 1000 vectores de 10 números aleatorios, y para cada vector calculo para cada par de valores (digamosmth y elnth) la diferencia entre ellos, menos la diferencia (Nuevo Méjico) Sumo los posibles pares y devuelvo el resultado para cada vector.
Espero que esta explicación sea clara
Muchas gracias por adelantado.