/// Generates a triangular matrix with the distances in kilometers between all points.
/// For each point, the distance to the following points is saved. This only allows
/// calculation of backward min-marginals
Generates a triangular matrix with the distances in kilometers between all points.
For each point, the distance to the following points is saved. This only allows
calculation of backward min-marginals
Generates a triangular matrix with the distances in kilometers between all points . For each point the distance to the following points is saved . This only allows calculation of backward min - marginals
pub fn half_dist_matrix(flat_points: &[FlatPoint<f32>]) -> Vec<Vec<f32>> {
    opt_par_iter(flat_points)
        .enumerate()
        .map(|(i, p1)| flat_points[i..].iter()
            .map(|p2| p1.distance(p2))
            .collect()) 
        .collect()
}
pub fn half_dist_matrix ( flat_points : & [ FlatPoint < f32 > ] ) -> Vec < Vec < f32 > > { opt_par_iter ( flat_points ) . enumerate ( ) . map ( | ( i , p1 ) | flat_points [ i .. ] . iter ( ) . map ( | p2 | p1 . distance ( p2 ) ) . collect ( ) ) . collect ( ) }
Generates a triangular matrix with the distances in kilometers between all points.
Generates a triangular matrix with the distances in kilometers between all points .
flat_points
&[FlatPoint<f32>]