Sorry I got it myself... I have to set Matrix(K*u) in the G window, so (1,4)*(4,1)=(1,1) and it does what it should do.
Gain dimension failure ending in error
4 views (last 30 days)
Show older comments
At first, I built the following control circle:

As you can see x is a (4,1)-vector and in the picture below you can see G is a (1,4)-Matrix.

Multiplying a K.*u means G.*x means in dimensions: (1,4)*(4,1)=(1,1). But (however) a (4,4)-matrix is the solution, which leads to an error, cos I cant add 4,4 and a scalar. So why is (4,4) the solution or what did I miss in the gain window? (I set element wise multiplication K.*u)
Accepted Answer
Aquatris
on 12 Jun 2024
Edited: Aquatris
on 12 Jun 2024
G gain is set for element wise multiplication instead of matrix multiplication, hence (1,4).*(4,1) = (4,4).
x = ones(4,1);
G = ones(1,4);
size(G.*x) % element wise multiplication
size(G*x) % matrix multiplication
Set the "Multiplication"drop down menu for the G gain to 'matrix multiplication'.
0 Comments
More Answers (0)
See Also
Categories
Find more on Creating and Concatenating Matrices 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!