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

4 vues (au cours des 30 derniers jours)
Rubem Pacelli
Rubem Pacelli le 17 Mar 2020
Commenté : Carel le 29 Sep 2022
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.

Réponse acceptée

Rubem Pacelli
Rubem Pacelli le 20 Avr 2020
Modifié(e) : Rubem Pacelli le 9 Août 2020
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 commentaire
Carel
Carel le 29 Sep 2022
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

Connectez-vous pour commenter.

Plus de réponses (1)

BobH
BobH le 17 Mar 2020
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 commentaires
Rubem Pacelli
Rubem Pacelli le 18 Mar 2020
Modifié(e) : Rubem Pacelli le 18 Mar 2020
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 le 18 Mar 2020
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.

Connectez-vous pour commenter.

Produits


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by