summaryrefslogtreecommitdiff
path: root/src/python/test/test_wasserstein_distance.py
diff options
context:
space:
mode:
authorMarc Glisse <marc.glisse@inria.fr>2019-11-05 23:01:31 +0100
committerMarc Glisse <marc.glisse@inria.fr>2019-11-05 23:01:31 +0100
commit94391b1cc232c5f66ae3cdadf865554c57f1308a (patch)
tree05621622d3f41638ab062a6ec825d28308937eea /src/python/test/test_wasserstein_distance.py
parent6e5f3f2c5ed908774c9005fa3ba07694bb2c6b0c (diff)
Create GUDHI_PYTHON_MODULES_EXTRA without auto-import
Put Wasserstein in it.
Diffstat (limited to 'src/python/test/test_wasserstein_distance.py')
-rwxr-xr-xsrc/python/test/test_wasserstein_distance.py38
1 files changed, 18 insertions, 20 deletions
diff --git a/src/python/test/test_wasserstein_distance.py b/src/python/test/test_wasserstein_distance.py
index c1b568e2..a6bf9901 100755
--- a/src/python/test/test_wasserstein_distance.py
+++ b/src/python/test/test_wasserstein_distance.py
@@ -1,4 +1,4 @@
-import gudhi
+from gudhi.wasserstein import wasserstein_distance
import numpy as np
""" This file is part of the Gudhi Library - https://gudhi.inria.fr/ - which is released under MIT.
@@ -23,28 +23,26 @@ def test_basic_wasserstein():
diag4 = np.array([[0, 3], [4, 8]])
emptydiag = np.array([[]])
- assert gudhi.wasserstein_distance(emptydiag, emptydiag, q=2., p=1.) == 0.
- assert gudhi.wasserstein_distance(emptydiag, emptydiag, q=np.inf, p=1.) == 0.
- assert gudhi.wasserstein_distance(emptydiag, emptydiag, q=np.inf, p=2.) == 0.
- assert gudhi.wasserstein_distance(emptydiag, emptydiag, q=2., p=2.) == 0.
+ assert wasserstein_distance(emptydiag, emptydiag, q=2., p=1.) == 0.
+ assert wasserstein_distance(emptydiag, emptydiag, q=np.inf, p=1.) == 0.
+ assert wasserstein_distance(emptydiag, emptydiag, q=np.inf, p=2.) == 0.
+ assert wasserstein_distance(emptydiag, emptydiag, q=2., p=2.) == 0.
- assert gudhi.wasserstein_distance(diag3, emptydiag, q=np.inf, p=1.) == 2.
- assert gudhi.wasserstein_distance(diag3, emptydiag, q=1., p=1.) == 4.
+ assert wasserstein_distance(diag3, emptydiag, q=np.inf, p=1.) == 2.
+ assert wasserstein_distance(diag3, emptydiag, q=1., p=1.) == 4.
- assert gudhi.wasserstein_distance(diag4, emptydiag, q=1., p=2.) == 5. # thank you Pythagorician triplets
- assert gudhi.wasserstein_distance(diag4, emptydiag, q=np.inf, p=2.) == 2.5
- assert gudhi.wasserstein_distance(diag4, emptydiag, q=2., p=2.) == 3.5355339059327378
+ assert wasserstein_distance(diag4, emptydiag, q=1., p=2.) == 5. # thank you Pythagorician triplets
+ assert wasserstein_distance(diag4, emptydiag, q=np.inf, p=2.) == 2.5
+ assert wasserstein_distance(diag4, emptydiag, q=2., p=2.) == 3.5355339059327378
- assert gudhi.wasserstein_distance(diag1, diag2, q=2., p=1.) == 1.4453593023967701
- assert gudhi.wasserstein_distance(diag1, diag2, q=2.35, p=1.74) == 0.9772734057168739
+ assert wasserstein_distance(diag1, diag2, q=2., p=1.) == 1.4453593023967701
+ assert wasserstein_distance(diag1, diag2, q=2.35, p=1.74) == 0.9772734057168739
- assert gudhi.wasserstein_distance(diag1, emptydiag, q=2.35, p=1.7863) == 3.141592214572228
+ assert wasserstein_distance(diag1, emptydiag, q=2.35, p=1.7863) == 3.141592214572228
- assert gudhi.wasserstein_distance(diag3, diag4, q=1., p=1.) == 3.
- assert gudhi.wasserstein_distance(diag3, diag4, q=np.inf, p=1.) == 3. # no diag matching here
- assert gudhi.wasserstein_distance(diag3, diag4, q=np.inf, p=2.) == np.sqrt(5)
- assert gudhi.wasserstein_distance(diag3, diag4, q=1., p=2.) == np.sqrt(5)
- assert gudhi.wasserstein_distance(diag3, diag4, q=4.5, p=2.) == np.sqrt(5)
-
-
+ assert wasserstein_distance(diag3, diag4, q=1., p=1.) == 3.
+ assert wasserstein_distance(diag3, diag4, q=np.inf, p=1.) == 3. # no diag matching here
+ assert wasserstein_distance(diag3, diag4, q=np.inf, p=2.) == np.sqrt(5)
+ assert wasserstein_distance(diag3, diag4, q=1., p=2.) == np.sqrt(5)
+ assert wasserstein_distance(diag3, diag4, q=4.5, p=2.) == np.sqrt(5)