# \[ANN\] EuclideanDistanceMatrices.jl

**URL:** <https://discourse.julialang.org/t/ann-euclideandistancematrices-jl/43107>\
**Category:** Package Announcements\
**Created:** [July 15, 2020, 7:37am UTC](https://discourse.julialang.org/t/ann-euclideandistancematrices-jl/43107 "2020-07-15T07:37:02Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![baggepinnen](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/baggepinnen/32/693_2.png) [@baggepinnen](https://discourse.julialang.org/u/baggepinnen)\
**Post date:** [July 15, 2020, 7:37am UTC](https://discourse.julialang.org/t/ann-euclideandistancematrices-jl/43107/1 "2020-07-15T07:37:02Z")

</div>

The package [EuclideanDistanceMatrices.jl](https://github.com/baggepinnen/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](https://jump.dev/Convex.jl/dev/) to solve an SDP (matrix completion)
- [TotalLeastSquares.jl](https://github.com/baggepinnen/TotalLeastSquares.jl/) for robust factorization
- [Turing.jl](https://turing.ml/dev/) for Bayesian estimation
