Author: tn
Date: Mon Oct 21 20:28:05 2013
New Revision: 1534363
URL: http://svn.apache.org/r1534363
Log:
Replace impl of NormalDistribution.density by calling
FastMath.exp(logDensity()) which should be faster.
Modified:
commons/proper/math/trunk/src/main/java/org/apache/commons/math3/distribution/NormalDistribution.java
Modified:
commons/proper/math/trunk/src/main/java/org/apache/commons/math3/distribution/NormalDistribution.java
URL:
http://svn.apache.org/viewvc/commons/proper/math/trunk/src/main/java/org/apache/commons/math3/distribution/NormalDistribution.java?rev=1534363&r1=1534362&r2=1534363&view=diff
==============================================================================
---
commons/proper/math/trunk/src/main/java/org/apache/commons/math3/distribution/NormalDistribution.java
(original)
+++
commons/proper/math/trunk/src/main/java/org/apache/commons/math3/distribution/NormalDistribution.java
Mon Oct 21 20:28:05 2013
@@ -41,8 +41,6 @@ public class NormalDistribution extends
public static final double DEFAULT_INVERSE_ABSOLUTE_ACCURACY = 1e-9;
/** Serializable version identifier. */
private static final long serialVersionUID = 8589540077390120676L;
- /** √(2 π) */
- private static final double SQRT2PI = FastMath.sqrt(2 * FastMath.PI);
/** √(2) */
private static final double SQRT2 = FastMath.sqrt(2.0);
/** Mean of this distribution. */
@@ -150,9 +148,7 @@ public class NormalDistribution extends
/** {@inheritDoc} */
public double density(double x) {
- final double x0 = x - mean;
- final double x1 = x0 / standardDeviation;
- return FastMath.exp(-0.5 * x1 * x1) / (standardDeviation * SQRT2PI);
+ return FastMath.exp(logDensity(x));
}
/** {@inheritDoc} */