Dot product of two vector
7 次查看(过去 30 天)
显示 更早的评论
Hello, I want to find the dot product of this two vector. Can anyone help me in the simple way
A=[c1 -s1 0
s1 c1 0
0 0 1]
N= [n1
n2
n3]
4 个评论
Star Strider
2023-8-27
Is ‘a1’ supposed to be ‘A(1,:)’ or ‘A(:,1)’?
Experiment with these options —
syms c1 n1 n2 n3 s1 real
A = [c1 -s1 0; s1 c1 0; 0 0 1];
N = [n1; n2; n3];
An = A * N % Original 'A'
AtN = A' * N % Transposed 'A'
.
采纳的回答
David Goodmanson
2023-8-28
编辑:David Goodmanson
2023-8-28
Hello Syazana
syms c1 s1 n1 n2 n3 a1 a2 a3 real
A = [c1 -s1 0; s1 c1 0; 0 0 1]
A =
[c1, -s1, 0]
[s1, c1, 0]
[ 0, 0, 1]
a1 = [1 0 0]'; % all of these are column vectors
a2 = [0 1 0]';
a3 = [0 0 1]';
n1 = [1 0 0]';
n2 = [0 1 0]';
n3 = [0 0 1]';
n1'*A*a1 % n1' is a row vector
ans = c1
n2'*A*a1 % A(2,1)
ans = s1
n1'*A*a2 % A(1,2)
ans = -s1
n3'*A*a3
ans = 1
As you can see, n1',n2', or n3' select out the row of A, and a1,a2, or a3 select out the column of A. As indicated in two comments above, the typograpy allows you to directly read off the resulting element of A. Doing the matrix multiplication by hand on a couple of examples will convince you how this works.
0 个评论
更多回答(1 个)
Star Strider
2023-8-27
My pleasure!
‘... how to set the coding if a3.n2 the answer will be in scalar which is 0 and if a3.n3 the answer will be 1 ...’
If you changed ‘N’ to:
N=[a1,a2,a3]
and unless ‘A’ changed to something else as well (and was not posted), the ‘n’ elements no longer exist, so I am now lost.
syms a1 a2 a3 c1 s1 real
A = [c1 -s1 0; s1 c1 0; 0 0 1];
N = [a1; a2; a3];
An = A * N % Original 'A'
.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!