function out = RandLim(n,lower,upper) % returns pseudo-random values drawn from a uniform distribution with lower % and upper limits LOWER and UPPER. % LOWER and UPPER can also be matrices of the same shape as rand(N) would % create % % N is a vector indicating the dimensions of the output: % N = [3] creates a 3x3 matrix % N = [1,3] creates a 1x3 matrix % N = [17,1,3] creates a 17x1x3 matrix % % LOWER and UPPER can be any number % DN 2008-07-21 Wrote it % DN 2008-09-19 Support for vector lower and upper limits % DN 2016-08-25 Switched from deprecated nargchk to narginchk narginchk(3,3); r = rand(n); if (~isscalar(lower) && any(size(lower)~=size(r))) || (~isscalar(upper) && any(size(upper)~=size(r))) error('LOWER and UPPER must each be scalar or have the same shape as rand(N)') else out = lower + r.*(upper-lower); end