diff maths/CosineDistance.cpp @ 299:5f2c9119a94a

* A few fixes prompted by vamp-plugin-tester
author Chris Cannam <c.cannam@qmul.ac.uk>
date Mon, 08 Jun 2009 12:30:20 +0000
parents 43943a4382ef
children e5907ae6de17
line wrap: on
line diff
--- a/maths/CosineDistance.cpp	Fri Jun 05 15:12:39 2009 +0000
+++ b/maths/CosineDistance.cpp	Mon Jun 08 12:30:20 2009 +0000
@@ -19,6 +19,7 @@
                                 const vector<double> &v2)
 {
     dist = 1.0; dDenTot = 0; dDen1 = 0; dDen2 = 0; dSum1 =0;
+    double small = 1e-20;
 
     //check if v1, v2 same size
     if (v1.size() != v2.size())
@@ -34,13 +35,7 @@
             dDen1 += v1[i]*v1[i];
             dDen2 += v2[i]*v2[i];
         }
-        dDenTot = sqrt(fabs(dDen1*dDen2));
-        if(dDenTot == 0)
-        {
-            cerr << "CosineDistance::distance: WARNING: dividing by zero in cosine dist\n";
-            return 1.0;
-        }
-	
+        dDenTot = sqrt(fabs(dDen1*dDen2)) + small;
         dist = 1-((dSum1)/dDenTot);
         return dist;
     }