Эх сурвалжийг харах

use euclid distance on unit circle for angle distance

Xi Ruoyao 4 жил өмнө
parent
commit
4e0ed1dccd
1 өөрчлөгдсөн 2 нэмэгдсэн , 3 устгасан
  1. 2 3
      metric.py

+ 2 - 3
metric.py

@@ -1,4 +1,4 @@
-from math import pi, asin, cos, sin, sqrt
+from math import pi, asin, cos, sin, sqrt, fmod
 
 def spherical_distance(a, b):
     coef = pi / 180
@@ -11,5 +11,4 @@ def spherical_distance(a, b):
     return asin(sqrt(a+b))
 
 def ang_distance(a, b):
-    x = abs(a-b)
-    return min(x, 360-x)
+    return (sin(a) - sin(b))**2 + (cos(a) - cos(b))**2