# How to implement a simulink model to perform Matrix multiplication ?

265 views (last 30 days)
Shravankumar P on 4 Aug 2014
A =
8 1 6
3 5 7
4 9 2
>> B=magic(3)
B =
8 1 6
3 5 7
4 9 2
>> C=A*B
C =
91 67 67
67 91 67
67 67 91
How to model this.

Christopher Berry on 7 Aug 2014
Matrix multiplication in Simulink is almost as easy as it is in MATLAB itself. See the block diagram below:
Select a Constant block for your matrix and use magic(3) as the "Constant Value". Then, select a Product bock to perform the multiplication. This Product block performs both element multiplication .* as well as matrix * multiplication, so you will have to select which one you would like from the "Multiplication" drop down inside the block parameters.
Then, use the To Workspace block to output your result to the Workspace so you can check it.
Just note that unlike MATLAB, Simulink always has a built notion of time, so this setup will calculate C = A*A at every timestep, so select an appropriate step size/simulation time to avoid wasted computations!
Satheesh Appukuttan on 10 Dec 2019
Similar to this question. I would like to perform a element wise multiplication 2 matrices. for example
say I have MxN and Nx1 matrix. I would like to implement using one product block by shifting input data. that way I will be using only one multiplier. How do I shift the data in simulink,so that element wise multiplication can be done by single product block with 2 scalar inputs.
For eg: [ 2 3 ] [ 1 = 2+6
2]

SAGAR SONI on 23 Oct 2018
how to done inverse kinematics for 5 dof robotic manipulator in simulink? please provide any suggestion and information or any material please