Matrix unpacking

| Vectorized | C |
in the palette on the schematic

The block implements the conversion of a single input vector signal to multiple vector output signals according to an algorithm:

or
where y(t) is a vector output signal, u(t) is a vector input signal. The input vector u(t), interpreted as a matrix of size [N×M] and "packed" by rows or columns (depending on the packing variant), is transformed into M or N vector outputs yj(t) (depending on the unpacking variant: by rows or by columns).

Inputs

  • inport - port for input vector signal.

Outputs

  • outport_n - output port for a row of a matrix. The number of block outputs is equal to the number of rows or columns of the input matrix, depending on the block property settings.

Properties:

  • Number of rows in the matrix – number M.
  • Number of columns in the matrix – number N.
  • Matrix is packed via – option of packing the input matrix: by rows or by columns.
  • Unpack the matrix via – option of "unpacking" the input matrix.

Parameters

none

Прим.:
  1. By default, the block unpacks a matrix of size [2×2] and forms two output signals (of size 2 each). In this case the matrix is packed and unpacked by rows.
  2. Named properties can be set as local model variables (submodels) in a programming language script, as global project signals using the Tools → Signals main menu item, or as external project signals using an attachable signal database.