How to sum matrix of different size on Simulink? (R2019a)

5 次查看(过去 30 天)
I have this block in my system:
The expected behavior is to perform as it's done on Matlab.
However, I receive this error:
How can I solve this problem?
PS1: I know that it seems pretty stupid. But maybe I'm pretty stupid.
PS2: I searched. Really.

采纳的回答

Rubem Pacelli
Rubem Pacelli 2020-4-20
编辑:Rubem Pacelli 2020-8-9
I found out what is going on. It turns out that there is a specific block to sum a vector along a multidimensional matrix. These blocks are called:
Array-Vector add
Array-Vector subtract
Array-Vector multiply
Array-Vector divide
It can do any basic operations that I was looking for.
  1 个评论
Carel
Carel 2022-9-29
It should be noted that this requires the DSP Toolbox.
I imagine you would be able to use the simple math blocks if you can make them have the same size, but using repmat in matlab function block in simulink gives different results than using it in a .m so I haven't been able to figure out a way yet

请先登录,再进行评论。

更多回答(1 个)

BobH
BobH 2020-3-17
The dimensions must agree, in MATLAB.
Z = zeros(400,32);
O = ones(1,32);
Z+O;
Error using +
Matrix dimensions must agree.
O = ones(400,32);
r = Z+O;
size(r)
ans =
400 32
  4 个评论
Rubem Pacelli
Rubem Pacelli 2020-3-18
编辑:Rubem Pacelli 2020-3-18
I'm using R2019a, on Linux (Mint). When I run your example, It works correctly. However, in Simulink it doesn't happen.
madhan ravi
madhan ravi 2020-3-18
BobH if you could see in each thread of the question there is a specific field named Release for the OPs to fill in the version they use.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Array and Matrix Mathematics 的更多信息

产品


版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by