Why does this matrix multiplication work?
1 view (last 30 days)
Show older comments
Hi,
I had a look at the Simmechanics Demo mech_bouncing_ball.mdl because I want to find out how to model ground.
In the subsystem that calculates the force that acts on the ball when hitting the floor is a matrix multiplication.
It is calculated with a Gain-Block. The input is a 1x3 Matrix, the Gain Parameter is [0 0 0;0 0 0;0 0 -ball.pengain] and the output is again a 1x3 matrix. The Setting of the calculation is "Matrix(K*u)". The Help says: "The input and gain are matrix multiplied with the input as the second operand."
I dont't understand how this works. How is it possible that a 3x3 matrix is multiplied with a 1x3 matrix? When I try that in the comand window it says that "Inner matrix dimensions must agree." Why does it work with the Gain Block?
Would be great if someone could help me. I really don't understand that. Thank you very much!
0 Comments
Answers (1)
David Sanchez
on 11 Jun 2013
What's wrong with it?
a=rand(1,3);
b=rand(3,3);
c=a*b;
3 Comments
Iain
on 11 Jun 2013
Its using the vector, as a column. eg
A = [0 1 0; 1 0 0; 0 0 1];
B = [2 3 4];
C = A*B';
C = [3; 2; 4]
See Also
Categories
Find more on Entering Commands in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!