summaryrefslogtreecommitdiff
path: root/src/Bottleneck_distance/include/gudhi/Bottleneck.h
diff options
context:
space:
mode:
authorGard Spreemann <gspr@nonempty.org>2020-12-16 15:17:15 +0100
committerGard Spreemann <gspr@nonempty.org>2020-12-16 15:17:15 +0100
commit289baa1aadd248940439698173caaa345ac0ba3d (patch)
tree719f4cee23b2eb5b98b51fb7520336df920024ae /src/Bottleneck_distance/include/gudhi/Bottleneck.h
parent5a450e1d5e0faac25085fb96d756d5963d0a15c4 (diff)
parentb6a3def70b15baf2dda0844762dcd291e240d2c1 (diff)
Merge branch 'dfsg/latest' into debian/sid
Diffstat (limited to 'src/Bottleneck_distance/include/gudhi/Bottleneck.h')
-rw-r--r--src/Bottleneck_distance/include/gudhi/Bottleneck.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/Bottleneck_distance/include/gudhi/Bottleneck.h b/src/Bottleneck_distance/include/gudhi/Bottleneck.h
index e466828a..c916898d 100644
--- a/src/Bottleneck_distance/include/gudhi/Bottleneck.h
+++ b/src/Bottleneck_distance/include/gudhi/Bottleneck.h
@@ -35,8 +35,12 @@ namespace persistence_diagram {
inline double bottleneck_distance_approx(Persistence_graph& g, double e) {
double b_lower_bound = 0.;
- double b_upper_bound = g.diameter_bound();
- const double alpha = std::pow(g.size(), 1. / 5.);
+ double b_upper_bound = g.max_dist_to_diagonal();
+ int siz = g.size();
+ if (siz <= 1)
+ // The value of alpha would be wrong in this case
+ return b_upper_bound;
+ const double alpha = std::pow(siz, 1. / 5.);
Graph_matching m(g);
Graph_matching biggest_unperfect(g);
while (b_upper_bound - b_lower_bound > 2 * e) {