question about euclidean distance.

1 visualización (últimos 30 días)
Cheng Kang
Cheng Kang el 11 de Feb. de 2016
Editada: Cheng Kang el 11 de Feb. de 2016
I want to find a function which can calculate the 3 dimension euclidean distance.
I have 9 arrays: Dx; Vx; ax; Dy; Vy; ay; Dz; Vz; az. the size of 9 arrays are the same.each array is 1*100000
the start point x0 =(Dx(1) Dy(1) Dz(1)) = (100 150 125)
How can I creat a function/script to run the following function:
x = Dx + Vx*t + 1/2*ax*t^2;
y = Dy + Vy*t + 1/2*ay*t^2;
z = Dz + Vz*t + 1/2*az*t^2;
t = 2; % it is fixed
L = ((x(n)-x(n-1))^2+(y(n)-y(n-1))^2+(z(n)-z(n-1))^2)^(1/2);
Thanks for your time and helping. :D

Respuesta aceptada

Image Analyst
Image Analyst el 11 de Feb. de 2016
This will do those equations:
function L = CalcDistance()
Dx = rand(1,100000);
Dy = rand(1,100000);
Dz = rand(1,100000);
Vx = rand(1,100000);
Vy = rand(1,100000);
Vz = rand(1,100000);
ax = rand(1,100000);
ay = rand(1,100000);
az = rand(1,100000);
t = 2; % it is fixed
x = Dx + Vx*t + 1/2*ax*t^2;
y = Dy + Vy*t + 1/2*ay*t^2;
z = Dz + Vz*t + 1/2*az*t^2;
dx = diff(x);
dy = diff(y);
dz = diff(z);
L = sqrt(dx.^2+ dy.^2+ dz.^2);
Of course you would not use rand(), you'd use the actual arrays, wherever you got them.
  4 comentarios
Image Analyst
Image Analyst el 11 de Feb. de 2016
You don't need x0. It's already in your D arrays at the first elements, so it's already taken into account in your L.
Cheng Kang
Cheng Kang el 11 de Feb. de 2016
Editada: Cheng Kang el 11 de Feb. de 2016
Thanks for your helping, my question is solved.
Have a nice day! :D
Kang

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Line Plots en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by