1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
pub mod graph;
mod graph_traits;
mod node_color_matching;
mod score_norm;
mod similarity_matrix;
use closed01::Closed01;
pub use {graph_traits::*, node_color_matching::*, score_norm::*, similarity_matrix::*};
impl NodeColorWeight for f32 {
fn node_color_weight(&self) -> f32 {
*self
}
}
pub fn similarity_max_degree<T: Graph>(a: &T, b: &T, num_iters: usize, eps: f32) -> Closed01<f32> {
let mut s = SimilarityMatrix::new(a, b, IgnoreNodeColors);
s.iterate(num_iters, eps);
s.score_optimal_sum_norm(None, ScoreNorm::MaxDegree)
}
pub fn similarity_min_degree<T: Graph>(a: &T, b: &T, num_iters: usize, eps: f32) -> Closed01<f32> {
let mut s = SimilarityMatrix::new(a, b, IgnoreNodeColors);
s.iterate(num_iters, eps);
s.score_optimal_sum_norm(None, ScoreNorm::MinDegree)
}