我是Java新手,我想要创建一个Weibull分布式随机值。
我试着使用WeibullGen包中的umontreal.iro.lecuyer.randvar类,但是被卡住了。
我尝试了类似的方法,但显然不起作用。
for(int i=0;i<5;i++){
int result = WeibullGen.nextDouble(RandomStream s ,1.0,1.0,1.0);
if(result>0) System.out.println(result);
}我的问题是我不知道如何创建一个流。我很确定这不会那么难,但我真的很难找到自己的路。
发布于 2013-10-07 18:55:08
为每个生成的随机数创建一个新流不是一个好主意。最好只使用这样的一个流:
RandomStream stream = new MRG32k3a();
for(int i=0;i<5;i++) {
int result = WeibullGen.nextDouble(stream, alp, lam,1.0);
System.out.println(result);
}发布于 2013-10-01 20:00:09
要创建一个内联的Stream,您可以这样做:
for(int i=0;i<5;i++){
int result = WeibullGen.nextDouble(new RandomStream(),1.0,1.0,1.0);
if(result>0) System.out.println(result);
}在Java中,必须使用new关键字实例化对象。
https://stackoverflow.com/questions/19124204
复制相似问题