functionM=setdiag(M, v)% SETDIAG Set the diagonal of a matrix to a specified scalar/vector.% M = set_diag(M, v)n=length(M);iflength(v)==1v=repmat(v,1,n);end% e.g., for 3x3 matrix, elements are numbered% 1 4 7 % 2 5 8 % 3 6 9% so diagnoal = [1 5 9]J=1:n+1:n^2;M(J)=v;%M = triu(M,1) + tril(M,-1) + diag(v);