diff -r ea5945b2da9c -r 435bbc8127b3 lemon/random.h --- a/lemon/random.h Fri Dec 21 01:32:24 2007 +0000 +++ b/lemon/random.h Sat Dec 22 07:01:20 2007 +0000 @@ -798,16 +798,12 @@ /// This function generates a Pareto distribution random number. /// + ///\param k shape parameter (k>0) ///\param x_min location parameter (x_min>0) - ///\param k shape parameter (k>0) /// - ///\warning This function used inverse transform sampling, therefore may - ///suffer from numerical unstability. - /// - ///\todo Implement a numerically stable method - double pareto(double x_min,double k) + double pareto(double k,double x_min) { - return x_min*pow(1.0-real(),1.0/k); + return exponential(gamma(k,1.0/x_min)); } ///@}