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