Azzera filtri
Azzera filtri

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

1 visualizzazione (ultimi 30 giorni)
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.

Risposta accettata

Rubem Pacelli
Rubem Pacelli il 20 Apr 2020
Modificato: Rubem Pacelli il 9 Ago 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 Commento
Carel
Carel il 29 Set 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

Accedi per commentare.

Più risposte (1)

BobH
BobH il 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 Commenti
Rubem Pacelli
Rubem Pacelli il 18 Mar 2020
Modificato: Rubem Pacelli il 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 il 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.

Accedi per commentare.

Prodotti


Release

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by