Hi.
On Tue, Dec 11, 2012 at 05:36:07AM -0000, [email protected] wrote:
> Author: psteitz
> Date: Tue Dec 11 05:36:06 2012
> New Revision: 1420000
>
> URL: http://svn.apache.org/viewvc?rev=1420000&view=rev
> Log:
> Added RealDistribution methods to EmpiricalDistribution. JIRA: MATH-672.
>
> Modified:
> commons/proper/math/trunk/src/changes/changes.xml
>
> commons/proper/math/trunk/src/main/java/org/apache/commons/math3/random/EmpiricalDistribution.java
>
> commons/proper/math/trunk/src/test/java/org/apache/commons/math3/random/EmpiricalDistributionTest.java
>
> Modified: commons/proper/math/trunk/src/changes/changes.xml
> URL:
> http://svn.apache.org/viewvc/commons/proper/math/trunk/src/changes/changes.xml?rev=1420000&r1=1419999&r2=1420000&view=diff
> ==============================================================================
> --- commons/proper/math/trunk/src/changes/changes.xml (original)
> +++ commons/proper/math/trunk/src/changes/changes.xml Tue Dec 11 05:36:06 2012
> @@ -77,6 +77,10 @@ This is a minor release: It combines bug
> 2. A few methods in the FastMath class are in fact slower that their
> counterpart in either Math or StrictMath (cf. MATH-740 and MATH-901).
> ">
> + <action dev="psteitz" type="update" issue="MATH-672">
> + Added methods to EmpiricalDistribution to implement the
> RealDistribution
> + interface.
> + </action>
> <action dev="tn" type="add" issue="MATH-897" due-to="Reid Hochstedler">
> DBSCAN clustering algorithm (in package "o.a.c.m.stat.clustering").
> </action>
>
> Modified:
> commons/proper/math/trunk/src/main/java/org/apache/commons/math3/random/EmpiricalDistribution.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/math/trunk/src/main/java/org/apache/commons/math3/random/EmpiricalDistribution.java?rev=1420000&r1=1419999&r2=1420000&view=diff
> ==============================================================================
> [...]
> +
> + /**
> + * Mass of bin i under the within-bin kernel of the bin.
> + *
> + * @param i index of the bin
> + * @return the difference in the within-bin kernel cdf between the
> + * upper and lower endpoints of bin i
> + */
> + @SuppressWarnings("deprecation")
> + private double kB(int i) {
> + final double[] binBounds = getUpperBounds();
> + final RealDistribution kernel = getKernel(binStats.get(i));
> + return i == 0 ? kernel.cumulativeProbability(min, binBounds[0]) :
> + kernel.cumulativeProbability(binBounds[i - 1], binBounds[i]);
> + }
Is there any advantage to suppressing the deprecation warnings?
There are many other instances in the code. It could be construed that it
points to the current state of affairs: deprecated code is only used where
we cannot do otherwise because of backward-compatibility constraints.
Unrelated but in that same file:
* The Javadoc mentions "RandomDataImpl" instead of "RandomDataGenerator".
* The Javadoc for constructor (line 191)
public EmpiricalDistribution(int binCount,
RandomDataGenerator randomData)
mentions that "randomData [...] may be null, resulting in default JDK
generator". But that instead results in NPE.
* The constructor (line 164)
public EmpiricalDistribution(int binCount,
RandomGenerator generator)
should call the one at line 191 instead of duplicating code.
Regards,
Gilles
> [...]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]