how can I compute distances:

2 views (last 30 days)
Robin Kaiser
Robin Kaiser on 27 Jan 2020
Commented: Walter Roberson on 28 Jan 2020
how can I compute distances:
I have a code which was running in matlab 2016:
Nat=1000;
pos=(rand(3, Nat)-0.5);
kr=dist(pos)+eye(Nat);
In my new matlab version (Matlab 2019), it seems to require an additional toolbox?
yours
Robin

Accepted Answer

Robin Kaiser
Robin Kaiser on 28 Jan 2020
Thank you for your fast feedback. I tried and get the following reply:
'pdist' requires Statistics and Machine Learning Toolbox.
yours
Robin
  1 Comment
Walter Roberson
Walter Roberson on 28 Jan 2020
kr = squeeze(sum((pos - permute(pos, [1 3 2])).^2,1)) + eye(NAT);

Sign in to comment.

More Answers (3)

Fangjun Jiang
Fangjun Jiang on 27 Jan 2020
Run the code and then run "license inuse". Only MATLAB is needed.
  2 Comments
Robin Kaiser
Robin Kaiser on 28 Jan 2020
after "license inuse" I get
"matlab" as answer, but dist(pos) still does not work. Is this a backward incompatibilty?
Walter Roberson
Walter Roberson on 28 Jan 2020
It is not a backward incompatibility. dist() was never part of basic MATLAB. You probably had some third-party dist() function.

Sign in to comment.


Walter Roberson
Walter Roberson on 27 Jan 2020
dist() is part of the Deep Learning Toolbox
  2 Comments
Robin Kaiser
Robin Kaiser on 28 Jan 2020
I see that
'dist' requires one of the following:
Deep Learning Toolbox
Navigation Toolbox
Robotics System Toolbox
Sensor Fusion and Tracking Toolbox
But I did not have those in my previous matlab version. So this seems to be a backward incompatibility?
Walter Roberson
Walter Roberson on 28 Jan 2020
No, it implies you used a third-party function before.
If you want to use basic MATLAB, then
kr = squareform(pdist(pos.')) + eye(Nat);

Sign in to comment.


Robin Kaiser
Robin Kaiser on 28 Jan 2020
Thank you: this works
yours
Robin

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!