我试图在matlab中创建一个指数随机数生成器。如果我可以使用exprand但是nope,生活会很容易:(这是我想要看的功能,如果它是正确的。
function x=erv(lambda)%generatae Exponential random variables
x=(-(1/lambda)*log(urv(1)));%using the urv function from 1a
end
所以URV函数给我一个[0,1]
的随机数function y=urv(howMany) %generate random numbers between [0,1] (uniform random variable), input how many RV's you want
for k=(1:howMany)
y(:,k)=(2*eps)*round(rand/(2*eps));
end
end
如果URV是正确的并且erv是正确的,那么任何人都可以给我任何见解。 感谢名单
答案 0 :(得分:0)
这是不正确的,因为您的随机数生成器无法生成某些数字,例如x=2.3^-17
。