summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorArne H Juul <arnej@yahooinc.com>2022-01-17 11:29:03 +0000
committerArne H Juul <arnej@yahooinc.com>2022-01-17 11:29:03 +0000
commitc608951bbf997d17bc72b4442fdc782e6cdcfec4 (patch)
tree5c0697a3ad41dabe01df44176161e1d4184c6ba5 /searchlib
parent6faa432d5114e4279c514fdf1c1de55946742dab (diff)
compare new GeoGcd with implementation as tensor distance
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/tests/tensor/distance_functions/distance_functions_test.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/searchlib/src/tests/tensor/distance_functions/distance_functions_test.cpp b/searchlib/src/tests/tensor/distance_functions/distance_functions_test.cpp
index f0e156a96ed..7abc83b0047 100644
--- a/searchlib/src/tests/tensor/distance_functions/distance_functions_test.cpp
+++ b/searchlib/src/tests/tensor/distance_functions/distance_functions_test.cpp
@@ -1,6 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include <vespa/eval/eval/typed_cells.h>
+#include <vespa/searchlib/common/geo_gcd.h>
#include <vespa/searchlib/tensor/distance_functions.h>
#include <vespa/searchlib/tensor/distance_function_factory.h>
#include <vespa/vespalib/gtest/gtest.h>
@@ -33,6 +34,10 @@ void verify_geo_miles(const DistanceFunction *dist_fun,
EXPECT_LE(d_miles, exp_miles*1.01);
double threshold = dist_fun->convert_threshold(km);
EXPECT_DOUBLE_EQ(threshold, abstract_distance);
+ // compare with common Great Circle Distance implementation:
+ search::common::GeoGcd gp1{p1[0], p1[1]};
+ double km_gcd = gp1.km_great_circle_distance(p2[0], p2[1]);
+ EXPECT_DOUBLE_EQ(km, km_gcd);
} else {
EXPECT_LE(d_miles, 7e-13);
EXPECT_LE(abstract_distance, 6e-33);