Say I have a vector v=[v1,...,vn].'. How can I generate the matrix D with components D(i,j) = vi - vj ? The dimension of the vector n is very large, so efficiency matters. Ideally I would like to generate the following matrix E(i,j) = 1/(vi-vj) for vi ~= vj (which we may assume corresponds to i~=j) and E(i,i) = 0.
Is there a fast way to do it? Doing it with loops is very slow.
Thanks a lot,