public override double NextDouble() { return(Math.Exp(PeakX + Scale * normalSampler.NextDouble())); }
public double NextDouble() { int sign = random.NextDouble() < 0.5 ? 1 : -1; return((sign * RawSample()) + mean); }
public override double NextDouble() { var u = z.NextDouble() - 0.5; return(PeakX - Scale * Math.Sign(u) * Math.Log(1 - 2 * Math.Abs(u))); }
public override double NextDouble() { var u = z.NextDouble(); return(PeakX + Scale * Math.Log(u / (1 - u))); }