Hi Eric.

Some nit-picking below...

On Tue, 25 Apr 2017 22:33:25 +0000 (UTC), ericbarnh...@apache.org wrote:
Repository: commons-numbers
Updated Branches:
  refs/heads/complex-dev 410abd7fa -> 07bbda2fd


Partial work on C Standard test; pulled changes made to master


Project: http://git-wip-us.apache.org/repos/asf/commons-numbers/repo
Commit:

http://git-wip-us.apache.org/repos/asf/commons-numbers/commit/07bbda2f
Tree: http://git-wip-us.apache.org/repos/asf/commons-numbers/tree/07bbda2f Diff: http://git-wip-us.apache.org/repos/asf/commons-numbers/diff/07bbda2f

Branch: refs/heads/complex-dev
Commit: 07bbda2fd6f19980f102d37601e61c06d2b98283
Parents: 410abd7
Author: Eric Barnhill <ericbarnh...@apache.org>
Authored: Wed Apr 26 00:33:10 2017 +0200
Committer: Eric Barnhill <ericbarnh...@apache.org>
Committed: Wed Apr 26 00:33:10 2017 +0200


----------------------------------------------------------------------
.../apache/commons/numbers/complex/Complex.java | 33 +++++++++++++-------
 1 file changed, 22 insertions(+), 11 deletions(-)

----------------------------------------------------------------------



http://git-wip-us.apache.org/repos/asf/commons-numbers/blob/07bbda2f/commons-numbers-complex/src/main/java/org/apache/commons/numbers/complex/Complex.java

----------------------------------------------------------------------
diff --git

a/commons-numbers-complex/src/main/java/org/apache/commons/numbers/complex/Complex.java

b/commons-numbers-complex/src/main/java/org/apache/commons/numbers/complex/Complex.java
index 1189451..f8510a5 100644
---

a/commons-numbers-complex/src/main/java/org/apache/commons/numbers/complex/Complex.java
+++

b/commons-numbers-complex/src/main/java/org/apache/commons/numbers/complex/Complex.java
@@ -124,6 +124,17 @@ public class Complex implements Serializable  {
     }

     /**
+ * For a real constructor argument x, returns a new Complex object c

In general, I'd suggest to make the Javadoc "lighter" by not repeating
that "new Complex object" phrase (I'd use "new instance" everywhere it's
clear that we talk about a "Complex object").

+     * where {@code c = cos(x) + i sin (x)}
+     *
+     * @param x {@code double} to build the cis number

I'd suggest to use "angle" as parameter name.
And refer to
  https://en.wikipedia.org/wiki/Cis_(mathematics)
[First time I hear of "cis"...]

+     * @return {@code Complex}

The return type is already specified by the declaration.
Again, saying "a new instance" gives a little bit more information.

+     */
+    public Complex cis(double x) {
+        return new Complex(Math.cos(x), Math.sin(x));
+    }
+
+    /**
* Returns projection of this complex number onto the Riemann sphere,
      * i.e. all infinities (including those with an NaN component)
      * project onto real infinity, as described in the
@@ -1482,7 +1493,6 @@ public class Complex implements Serializable  {
         }
     }

-
      /**
* Check that the argument is positive and throw a RuntimeException
      * if it is not.
@@ -1493,6 +1503,17 @@ public class Complex implements Serializable { throw new RuntimeException("Complex: Non-positive argument");
         }
     }
+
+     /**
+ * Check that the argument is positive and throw a RuntimeException
+     * if it is not.
+     * @param arg {@code double} to check
+     */
+    private static void checkNotNegative(double arg) {
+        if (arg <= 0) {
+ throw new RuntimeException("Complex: Non-positive argument");
+        }
+    }

It's much better to use an "IllegalArgumentException".


     /**
      * Returns {@code true} if the values are equal according to
semantics of
@@ -1505,14 +1526,4 @@ public class Complex implements Serializable {
     private static boolean equals(double x, double y) {
         return new Double(x).equals(new Double(y));
     }

This was part of a previous commit; depending on the usage, we should
perhaps look for a more efficient implementation.


Regards,
Gilles

-
-    /**
- * Returns an integer hash code representing the given double value.
-     *
-     * @param value the value to be hashed
-     * @return the hash code
-     */
-    private static int hash(double value) {
-        return new Double(value).hashCode();
-    }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to