about angles between each column

1 次查看(过去 30 天)
Bo Wang
Bo Wang 2016-3-11
Hi, I have a problem that let me determine the angles between each columns in a m*n matrix. I already know that how to calculate the angle between each column, but how can I store these values in a n*n matrix G where Gij is the angle between ith column and jth column? Here is my code:
function G=angle(a)
[m,n]=size(a);
G1=atand(norm(cross(a(:,1),a(:,1)),dot(a(:,1),a(:,1))));
end
Thank you!

回答(1 个)

Stalin Samuel
Stalin Samuel 2016-3-11
I am not sure about the formula. But you can refer the below code for store the values
[m,n]=size(a);
for it1 = 1:n
for it2 = 1:n
G1(it1,it2)=atand(norm(cross(a(:,it1),a(:,it2)),dot(a(:,it1),a(:,it2))));
end
end
  2 个评论
Bo Wang
Bo Wang 2016-3-11
Thank you! It works perfect!
Roger Stafford
Roger Stafford 2016-3-11
That should be 'atan2d' in your code, not 'atand'. The function 'atand' takes only one argument.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by