You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mahout.apache.org by sr...@apache.org on 2010/03/02 14:19:23 UTC

svn commit: r918020 - /lucene/mahout/trunk/math/src/main/java/org/apache/mahout/math/AbstractVector.java

Author: srowen
Date: Tue Mar  2 13:19:23 2010
New Revision: 918020

URL: http://svn.apache.org/viewvc?rev=918020&view=rev
Log:
Simple style and micro-optimizations as noted on mahout-dev

Modified:
    lucene/mahout/trunk/math/src/main/java/org/apache/mahout/math/AbstractVector.java

Modified: lucene/mahout/trunk/math/src/main/java/org/apache/mahout/math/AbstractVector.java
URL: http://svn.apache.org/viewvc/lucene/mahout/trunk/math/src/main/java/org/apache/mahout/math/AbstractVector.java?rev=918020&r1=918019&r2=918020&view=diff
==============================================================================
--- lucene/mahout/trunk/math/src/main/java/org/apache/mahout/math/AbstractVector.java (original)
+++ lucene/mahout/trunk/math/src/main/java/org/apache/mahout/math/AbstractVector.java Tue Mar  2 13:19:23 2010
@@ -42,7 +42,7 @@
 
   protected int size;
 
-  protected double lengthSquared = -1;
+  protected double lengthSquared = -1.0;
 
   protected AbstractVector() {
     this(null, 0);
@@ -58,16 +58,18 @@
   }
 
   public double aggregate(BinaryFunction aggregator, UnaryFunction map) {
-    double result = 0;
-    for(int i=0; i<size(); i++) {
+    double result = 0.0;
+    int size = size();
+    for(int i=0; i<size; i++) {
       result = aggregator.apply(result, map.apply(getQuick(i)) );
     }
     return result;
   }
 
   public double aggregate(Vector other, BinaryFunction aggregator, BinaryFunction combiner) {
-    double result = 0;
-    for(int i=0; i<size(); i++) {
+    double result = 0.0;
+    int size = size();
+    for(int i=0; i<size; i++) {
       result = aggregator.apply(result, combiner.apply(getQuick(i), other.getQuick(i)));
     }
     return result;
@@ -121,7 +123,9 @@
     if (size() != x.size()) {
       throw new CardinalityException(size(), x.size());
     }
-    if(this == x) return dotSelf();
+    if (this == x) {
+      return dotSelf();
+    }
     double result = 0.0;
     Iterator<Element> iter = iterateNonZero();
     while (iter.hasNext()) {
@@ -132,7 +136,7 @@
   }
   
   public double dotSelf() {
-    double result = 0;
+    double result = 0.0;
     if (this instanceof DenseVector) {
       for (int i = 0; i < size(); i++) {
         double value = this.getQuick(i);
@@ -142,8 +146,7 @@
     } else {
       Iterator<Element> iter = iterateNonZero();
       while (iter.hasNext()) {
-        Element element = iter.next();
-        double value = element.get();
+        double value = iter.next().get();
         result += value * value;
       }
       return result;
@@ -247,9 +250,8 @@
     }
     Vector randomlyAccessed;
     Iterator<Element> it;
-    Element e;
-    double d = 0;
-    if(lengthSquared >= 0 ) {
+    double d = 0.0;
+    if (lengthSquared >= 0.0) {
       it = v.iterateNonZero();
       randomlyAccessed = this;
       d += lengthSquared;
@@ -258,8 +260,10 @@
       randomlyAccessed = v;
       d += v.getLengthSquared();
     }
-    while(it.hasNext() && (e = it.next()) != null) {
-      d += e.get() * (e.get() - 2 * randomlyAccessed.getQuick(e.index()));
+    while(it.hasNext()) {
+      Element e = it.next();
+      double value = e.get();
+      d += value * (value - 2.0 * randomlyAccessed.getQuick(e.index()));
     }
     assert(d > -1.0e-9); // round-off errors should never be too far off!
     return Math.abs(d);
@@ -274,7 +278,9 @@
       Element element = iter.next();
       result = Math.max(result, element.get());
     }
-    if (nonZeroElements < size()) return Math.max(result, 0.0);
+    if (nonZeroElements < size()) {
+      return Math.max(result, 0.0);
+    }
     return result;
   }
   
@@ -299,7 +305,7 @@
       while (iter.hasNext()) {
         Element element = iter.next();
         double tmp = element.get();
-        if (tmp == 0d) {
+        if (tmp == 0.0) {
           return element.index();
         }
       }
@@ -309,7 +315,8 @@
 
   public Vector plus(double x) {
     Vector result = clone();
-    for (int i = 0; i < result.size(); i++) {
+    int size = result.size();
+    for (int i = 0; i < size; i++) {
       result.setQuick(i, getQuick(i) + x);
     }
     return result;
@@ -324,20 +331,18 @@
     Iterator<Element> iter = x.iterateNonZero();
     while (iter.hasNext()) {
       Element e = iter.next();
-      result.setQuick(e.index(), getQuick(e.index()) + e.get());
+      int index = e.index();
+      result.setQuick(index, getQuick(index) + e.get());
     }
-
-    /*for (int i = 0; i < result.size(); i++)
-      result.setQuick(i, getQuick(i) + x.getQuick(i));*/
     return result;
   }
 
   public void addTo(Vector v) {
     Iterator<Element> it = iterateNonZero();
-    Element e;
-    while(it.hasNext() && (e = it.next()) != null) {
-      int i = e.index();
-      v.setQuick(i, v.getQuick(i) + e.get());
+    while(it.hasNext() ) {
+      Element e = it.next();
+      int index = e.index();
+      v.setQuick(index, v.getQuick(index) + e.get());
     }
   }
 
@@ -368,26 +373,25 @@
     Iterator<Element> iter = result.iterateNonZero();
     while (iter.hasNext()) {
       Element element = iter.next();
-      int index = element.index();
-      element.set(element.get() * x.getQuick(index));
+      element.set(element.get() * x.getQuick(element.index()));
     }
 
     return result;
   }
 
   public double zSum() {
-    double result = 0;
+    double result = 0.0;
     Iterator<Element> iter = iterateNonZero();
     while (iter.hasNext()) {
-      Element element = iter.next();
-      result += element.get();
+      result += iter.next().get();
     }
 
     return result;
   }
 
   public Vector assign(double value) {
-    for (int i = 0; i < size(); i++) {
+    int size = size();
+    for (int i = 0; i < size; i++) {
       setQuick(i, value);
     }
     return this;
@@ -397,7 +401,8 @@
     if (values.length != size()) {
       throw new CardinalityException();
     }
-    for (int i = 0; i < size(); i++) {
+    int size = size();
+    for (int i = 0; i < size; i++) {
       setQuick(i, values[i]);
     }
     return this;
@@ -407,7 +412,8 @@
     if (other.size() != size()) {
       throw new CardinalityException();
     }
-    for (int i = 0; i < size(); i++) {
+    int size = size();
+    for (int i = 0; i < size; i++) {
       setQuick(i, other.getQuick(i));
     }
     return this;
@@ -420,8 +426,8 @@
     } else {
       it = iterateAll();
     }
-    Element e;
-    while(it.hasNext() && (e = it.next()) != null) {
+    while(it.hasNext()) {
+      Element e = it.next();
       e.set(f.apply(e.get(), y));
     }
     return this;
@@ -434,8 +440,8 @@
     } else {
       it = iterateAll();
     }
-    Element e;
-    while(it.hasNext() && (e = it.next()) != null) {
+    while(it.hasNext()) {
+      Element e = it.next();
       e.set(function.apply(e.get()));
     }
     return this;