operation on single elements in MATLAB

greeting all the experts,
x=-2:1:2; %coordinates x
n=length(x);
y=x.^2; %coordinates y
z=[x;y];
from the above example, I will have matrix z (2x5)=[-2 -1 0 1 2: 4 1 0 1 4]. This will give 5 point on the graph which are (-2,4), (-1,1), (0,0),(1,1) (2,4). then, my next step is, i want to find the distance for each points.
distance 1 from (-2,4) to (-1,1)
distance 2 from (-1,1) to (0,0)
distance 3 from (0,0) to(1,1)
distance 4 from (1,1) to (2,4)
My problem/question, how to type the distance formula generally to conduct operation on each elements?
distance formula = sqrt((x2-x1)^2+(y2-y1)^2)

 Respuesta aceptada

Matt J
Matt J el 29 de Jul. de 2022
Editada: Matt J el 29 de Jul. de 2022
x=-2:1:2; %coordinates x
n=length(x);
y=x.^2; %coordinates y
z=[x;y]
z = 2×5
-2 -1 0 1 2 4 1 0 1 4
interDistances=vecnorm(diff(z,1,2),2,1) %the result
interDistances = 1×4
3.1623 1.4142 1.4142 3.1623

4 comentarios

Noriham B
Noriham B el 29 de Jul. de 2022
great...it seems to answer my problem. Very much appreaciate the prompt reply. I was type exactly as urs. And looks fine and no error. But, when I press run button, I got this message
Undefined function 'vecnorm' for input arguments
of type 'double'.
Error in MatJJ (line 10)
interDistances=vecnorm(diff(z,1,2),2,1); %the
result
Noriham B
Noriham B el 29 de Jul. de 2022
Dear Prof/Dr./Sir Matt J, I got it already. I have to download the VecNorm file first right?Iwas re tried just now. I get the results as expected. Tqvm for introducing me to the VecNorm.
Walter Roberson
Walter Roberson el 29 de Jul. de 2022
vecnorm needs r2017b .
We assume you have a new enough version of MATLAB as you did not enter a release when you created your question.
Noriham B
Noriham B el 29 de Jul. de 2022
noted Prof/Dr./Sir Walter. I will try to get the newer version after this. Thanks :)

Iniciar sesión para comentar.

Más respuestas (1)

Chunru
Chunru el 29 de Jul. de 2022
x=-2:1:2; %coordinates x
y=x.^2; %coordinates y
z=[x;y]
z = 2×5
-2 -1 0 1 2 4 1 0 1 4
d = diff(z, 1, 2) % diff along 2nd dim
d = 2×4
1 1 1 1 -3 -1 1 3
d = vecnorm(d) % distance
d = 1×4
3.1623 1.4142 1.4142 3.1623

1 comentario

Noriham B
Noriham B el 29 de Jul. de 2022
Dear Prof/Dr./Sir Chunru. Tqvm for the help. U also use vecnorm like Matt J. I will study more about vecnorm for future need. Tq also to MATLAB for giving us opportunity to ask for help in this platform.

Iniciar sesión para comentar.

Categorías

Más información sobre Linear Algebra en Centro de ayuda y File Exchange.

Productos

Etiquetas

Preguntada:

el 29 de Jul. de 2022

Comentada:

el 29 de Jul. de 2022

Community Treasure Hunt

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

Start Hunting!

Translated by