You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datasketches.apache.org by le...@apache.org on 2022/07/13 21:56:32 UTC

[datasketches-java] branch pwr2seriesToLong created (now 205bb5c3)

This is an automated email from the ASF dual-hosted git repository.

leerho pushed a change to branch pwr2seriesToLong
in repository https://gitbox.apache.org/repos/asf/datasketches-java.git


      at 205bb5c3 Extend pwr2SeriesNext and powerSeriesNextDouble to use longs.

This branch includes the following new commits:

     new 205bb5c3 Extend pwr2SeriesNext and powerSeriesNextDouble to use longs.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datasketches.apache.org
For additional commands, e-mail: commits-help@datasketches.apache.org


[datasketches-java] 01/01: Extend pwr2SeriesNext and powerSeriesNextDouble to use longs.

Posted by le...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

leerho pushed a commit to branch pwr2seriesToLong
in repository https://gitbox.apache.org/repos/asf/datasketches-java.git

commit 205bb5c37796a3ad32c55d4705e4fd6be4429f8b
Author: Lee Rhodes <le...@users.noreply.github.com>
AuthorDate: Mon Jul 11 10:05:45 2022 -0700

    Extend pwr2SeriesNext and powerSeriesNextDouble to use longs.
---
 src/main/java/org/apache/datasketches/Util.java     | 14 +++++++-------
 src/test/java/org/apache/datasketches/UtilTest.java | 10 +++++-----
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/src/main/java/org/apache/datasketches/Util.java b/src/main/java/org/apache/datasketches/Util.java
index 0074506d..89dcda56 100644
--- a/src/main/java/org/apache/datasketches/Util.java
+++ b/src/main/java/org/apache/datasketches/Util.java
@@ -544,12 +544,12 @@ public final class Util {
    * @param curPoint the current point of the series. Must be &ge; 1.
    * @return the next point in the power series.
    */
-  public static int pwr2SeriesNext(final int ppo, final int curPoint) {
-    final int cur = curPoint < 1 ? 1 : curPoint;
+  public static long pwr2SeriesNext(final int ppo, final long curPoint) {
+    final long cur = curPoint < 1L ? 1L : curPoint;
     int gi = (int)round(log2(cur) * ppo); //current generating index
-    int next;
+    long next;
     do {
-      next = (int)round(pow(2.0, (double) ++gi / ppo));
+      next = round(pow(2.0, (double) ++gi / ppo));
     } while ( next <= curPoint);
     return next;
   }
@@ -606,18 +606,18 @@ public final class Util {
    *
    * @param ppb Points-Per-Base, or the number of points per integer powers of base in the series.
    * @param curPoint the current point of the series. Must be &ge; 1.0.
-   * @param roundToInt if true the output will be rounded to the nearest integer.
+   * @param roundToLong if true the output will be rounded to the nearest long.
    * @param logBase the desired base of the logarithms
    * @return the next point in the power series.
    */
   public static double powerSeriesNextDouble(final int ppb, final double curPoint,
-      final boolean roundToInt, final double logBase) {
+      final boolean roundToLong, final double logBase) {
     final double cur = curPoint < 1.0 ? 1.0 : curPoint;
     double gi = round(logBaseOfX(logBase, cur) * ppb ); //current generating index
     double next;
     do {
       final double n = pow(logBase, ++gi / ppb);
-      next = roundToInt ? round(n) : n;
+      next = roundToLong ? round(n) : n;
     } while (next <= cur);
     return next;
   }
diff --git a/src/test/java/org/apache/datasketches/UtilTest.java b/src/test/java/org/apache/datasketches/UtilTest.java
index 931f6a71..1ab20db6 100644
--- a/src/test/java/org/apache/datasketches/UtilTest.java
+++ b/src/test/java/org/apache/datasketches/UtilTest.java
@@ -386,14 +386,14 @@ public class UtilTest {
 
   @Test
   public void checkPwr2LawNext() {
-    int next = pwr2SeriesNext(2, 1);
+    int next = (int)pwr2SeriesNext(2, 1);
     Assert.assertEquals(next, 2);
-    next = pwr2SeriesNext(2, 2);
+    next = (int)pwr2SeriesNext(2, 2);
     Assert.assertEquals(next, 3);
-    next = pwr2SeriesNext(2, 3);
+    next = (int)pwr2SeriesNext(2, 3);
     Assert.assertEquals(next, 4);
 
-    next = pwr2SeriesNext(2, 0);
+    next = (int)pwr2SeriesNext(2, 0);
     Assert.assertEquals(next, 1);
   }
 
@@ -423,7 +423,7 @@ public class UtilTest {
     final int minP = 1;
     final int ppo = 4;
 
-    for (int p = minP; p <= maxP; p = pwr2SeriesNext(ppo, p)) {
+    for (int p = minP; p <= maxP; p = (int)pwr2SeriesNext(ppo, p)) {
       print(p + " ");
     }
     println("");


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datasketches.apache.org
For additional commands, e-mail: commits-help@datasketches.apache.org