public void ValidateDensityLn(double lower, double upper) { var n = new ContinuousUniform(lower, upper); for (var i = 0; i < 11; i++) { var x = i - 5.0; if (x >= lower && x <= upper) { Assert.AreEqual(-Math.Log(upper - lower), n.DensityLn(x)); Assert.AreEqual(-Math.Log(upper - lower), ContinuousUniform.PDFLn(lower, upper, x)); } else { Assert.AreEqual(double.NegativeInfinity, n.DensityLn(x)); Assert.AreEqual(double.NegativeInfinity, ContinuousUniform.PDFLn(lower, upper, x)); } } }