Question
If w=rand(4,3); p=rand(3,1); z=dist(w,p) ans is 0.4278 0.6786 0.3725 0.6324 how these values comes?
Expert Answer
Prashant Kumar
PhD Expert
Answered Aug 26, 2026
The dist function is a 'Euclidean distance weight function' which applies weights to an input to get weighted inputs. At your example:
W is the (random) weight matrix. P is the input vector Z is the weighted input
If you type in the matlab prompt 'edit dist.apply' you find the formula behind this function. For your example, the weighted matrix is subtracted from the transposed and copied vector. Now it is squared and then the square root is taken. This is how the Euclidian norm is defined Norm = square((a-b)^2)
I have copied the code and made the example simpler to understand in the code below better:
clc;clear all;close all;
p=[1;2;3]
w=[1 1 2;1 1 1;1 2 1;1 1 1]
z1=dist(w,p)
% dist function
S = size(w,1);
Q = size(p,2);
z2 = zeros(S,Q);
if (Q<S)
p = p';
copies = zeros(1,S);
for q=1:Q
z2(:,q) = sum((w-p(q+copies,:)).^2,2);
end
else
w = w';
copies = zeros(1,Q);
for i=1:S
z2(i,:) = sum((w(:,i+copies)-p).^2,1);
end
end
z2 = sqrt(z2)
Here z1 and z2 should give the same answer.
I hope this makes it clearer.
100% Run Guarantee
3-Hour Fast-Track Delivery
Need a Custom Version or Complete Simulation for This Problem?
Our 500+ PhD engineers build, debug, and optimize working MATLAB scripts and Simulink (.slx) models tailored to your exact assignment rubrics with zero plagiarism.
Tested on MATLAB R2024b / R2026a
Turnitin 0% Plagiarism Report
Free 7-Day Revisions Guarantee
Have a different question? Ask here
Related eulidean distance Questions & Solutions
Browse All →
Explore similar technical troubleshooting questions and verified MATLAB solutions:
Ready-to-Run MATLAB & Simulink Projects
Browse All Projects →