The package EuclideanDistanceMatrices.jl contains tools for working with said matrices, doing this like
- Estimating them.
- Completing them if they have missing entries.
- Denoising them if they are measured and have noisy entries.
- Reconstruct the points that generated a distance matrix.
- Align such point sets to each other (Procrustes).
- Calculate posterior distributions over points when given both noisy locations and noisy distances, or TDOAs (time difference of arrival) are available (e.g., microphone array calibration).
The package makes use of
- Convex.jl to solve an SDP (matrix completion)
- TotalLeastSquares.jl for robust factorization
- Turing.jl for Bayesian estimation