I have a matrix and each row of the matrix is a vector. I want to perform norm function on each row of this matrix and save the result in a new matrix.
For example, if I had these vectors:
u = [-1 1 0; -1 1 0]v = [0 1 1; 0 1 -1]
I wanted to calculate the angle between the vectors of the corresponding rows. So the answer should look like this:
angle = [60 ; 60]
But whatever I tried has not worked:
angle = atan2d(norm(cross(u,v,2)),dot(u,v,2))
works for single vectors, but not for a matrix of vectors. This is because I cannot perform the norm function on each row of the two matrices. I also tried this:
angle = atan2d(normr(cross(u,v,2)),dot(u,v,2))
but did not work.
How can I get a result like this:
n = [norm of vectors of first row ; norm of vectors of second row ; norm of vectors of third row ; ...]
witout using a loop?
Best Answer