wolffd@0: function M = rand_psd(d, d2, k) wolffd@0: % Create a random positive definite matrix of size d by d by k (k defaults to 1) wolffd@0: % M = rand_psd(d, d2, k) default: d2 = d, k = 1 wolffd@0: wolffd@0: if nargin<2, d2 = d; end wolffd@0: if nargin<3, k = 1; end wolffd@0: if d2 ~= d, error('must be square'); end wolffd@0: wolffd@0: M = zeros(d,d,k); wolffd@0: for i=1:k wolffd@0: A = rand(d); wolffd@0: M(:,:,i) = A*A'; wolffd@0: end