Contenuto principale

Vector Concatenate

Concatenare vettori di input dello stesso tipo di dato per l'elaborazione iterativa

  • Vector Concatenate block

Librerie:
Simulink / Commonly Used Blocks
Simulink / Math Operations
Simulink / Signal Routing
HDL Coder / Math Operations
HDL Coder / Signal Routing

Configurazioni alternative del blocco Vector Concatenate:
Matrix Concatenate

Descrizione

Il blocco Vector Concatenate concatena i segnali di input per creare un segnale non scalare che è possibile elaborare in modo iterativo con un sottosistema, ad esempio un sottosistema for-each, while-iterator o for-iterator.

È possibile utilizzare più blocchi Vector Concatenate per creare il segnale di output in più fasi, ma si otterrebbe un risultato piatto, come se si utilizzasse un singolo blocco per concatenare i segnali.

I segnali nel segnale di output appaiono nello stesso ordine dei segnali di input per il blocco. Per una descrizione dell'ordine delle porte per i vari orientamenti dei blocchi, vedere Identify Port Location on Rotated or Flipped Block.

È necessario utilizzare un blocco Vector Concatenate o Matrix Concatenate per definire un array di bus. Per ulteriori informazioni, vedere Group Nonvirtual Buses in Arrays of Buses.

Esempi

espandi tutto

Un blocco Vector Concatenate concatena i vettori che riceve, disponendoli uno accanto all'altro nel vettore di output.

Ad esempio, simulare il modello VectorConcatenation.

I vettori di input [1 2] e [3 4] vengono concatenati per creare il vettore di output [1 2 3 4].

Esempi approfonditi

Porte

Input

espandi tutto

Primo input da concatenare, specificato come scalare, vettore, matrice o array.

  • Gli input devono essere dello stesso tipo di dato.

  • Gli input di matrici e array sono supportati solo quando si imposta Mode su Multidimensional array.

Quando il tipo di dato è un oggetto Simulink.Bus, gli input devono essere bus non virtuali.

Tipi di dati: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus | image

N-esimo input da concatenare, specificato come scalare, vettore, matrice o array.

  • Gli input devono essere dello stesso tipo di dato.

  • Gli input di matrici e array sono supportati solo quando si imposta Mode su Multidimensional array.

Dipendenze

Per aggiungere porte di input, impostare Number of inputs su un numero intero maggiore di o uguale a 2.

Tipi di dati: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus | image

Output

espandi tutto

Concatenazione dei segnali input lungo una dimensione specificata. Gli output hanno lo stesso tipo di dato dell'input.

Tipi di dati: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus | image

Parametri

espandi tutto

Per modificare i parametri del blocco in modo interattivo, utilizzare Property Inspector. Sulla barra degli strumenti di Simulink®, nella scheda Simulation, nella galleria Prepare, selezionare Property Inspector.

Specificare il numero di input per il blocco come numero intero positivo a valore reale, inferiore o uguale a 65536.

Utilizzo programmatico

Per impostare il valore del parametro del blocco in modo programmatico, utilizzare la funzione set_param.

Parametro: NumInputs
Valori: '2' (predefinito) | positive integer in quotes
Tipi di dati: char | string

Esempio set_param(gcb,'NumInputs','3')

Selezionare se il blocco deve funzionare in modalità di concatenazione di vettori o di array multidimensionali. Per impostazione predefinita, Mode del blocco Vector Concatenate è Vector. Per impostazione predefinita, Mode del blocco Matrix Concatenate è Multidimensional array.

  • Quando si seleziona Vector, il blocco esegue la concatenazione di vettori.

  • Quando si seleziona Multidimensional array, il blocco esegue la concatenazione di matrici.

Impostazione ModeSegnali di inputSegnale di output
Vector

  • Vettori

  • Vettori riga (matrici 1 x M)

  • Vettori colonna (matrici M x 1)

  • Combinazione di vettori e vettori riga o colonna

Quando tutti gli input sono vettori, l'output è un vettore.

Se uno qualsiasi degli input è un vettore riga o colonna, l'output è rispettivamente un vettore riga o colonna.

Multidimensional array

Segnali di qualsiasi dimensionalità (scalari, vettori e matrici)

L'output è sempre un array.

Si presume che le dimensioni finali siano 1 per gli input a dimensionalità inferiore. Ad esempio, se l'output è quadridimensionale e l'input è [2x3] (bidimensionale), questo blocco tratta l'input come [2x3x1x1].

La concatenazione avviene sulla dimensione specificata con il parametro Concatenate dimension.

Utilizzo programmatico

Per impostare il valore del parametro del blocco in modo programmatico, utilizzare la funzione set_param.

Parametro: Mode
Valori: 'Vector' | 'Multidimensional array'

Esempio set_param(gcb,'Mode','Vector')

Specificare la dimensione dell'output lungo la quale concatenare gli array di input.

  • 1: concatenare gli input verticalmente. La concatenazione verticale delle matrici sovrappone le matrici di input l'una sull'altra nella matrice di output. Quando si inserisce un blocco Vector Concatenate e si imposta Mode (Modalità) su Multidimensional array, l'impostazione predefinita è 1.

  • 2: concatenare gli input orizzontalmente. La concatenazione orizzontale delle matrici posiziona le matrici di input una accanto all'altra nella matrice di output. Quando si inserisce un blocco Matrix Concatenate, l'impostazione predefinita è 2.

  • 3 o più: esegue una concatenazione multidimensionale sugli input.

Le matrici di input devono avere dimensioni compatibili per poter essere concatenate. La concatenazione verticale richiede che le matrici di input abbiano lo stesso numero di colonne. La concatenazione orizzontale richiede che le matrici di input abbiano lo stesso numero di righe.

Dipendenze

Per abilitare questo parametro, impostare Mode (Modalità) su Multidimensional array.

Utilizzo programmatico

Per impostare il valore del parametro del blocco in modo programmatico, utilizzare la funzione set_param.

Parametro: ConcatenateDimension
Valori: scalar integer in quotes
Tipi di dati: char | string

Esempio set_param(gcb,'ConcatenateDimension','3')

Caratteristiche del blocco

Tipi di dati:

Boolean | double | enumerated | fixed point | half | image | integer | single

Passaggio diretto

Segnali multidimensionali

no

Segnali di dimensioni variabili

Rilevamento zero-crossing

no

Configurazioni alternative

espandi tutto

Il blocco Matrix Concatenate imposta Mode (Modalità) su Multidimensional array.

Librerie:
Simulink / Math Operations
Simulink / Matrix Operations
DSP System Toolbox / Math Functions / Matrices and Linear Algebra / Matrix Operations
HDL Coder / Math Operations

Funzionalità estese

espandi tutto

Generazione di codice C/C++
Genera codice C e C++ con Simulink® Coder™.

Generazione di codice PLC
Genera codice di testo strutturato con Simulink® PLC Coder™.

Conversione a virgola fissa
Progetta e simula sistemi a virgola fissa con Fixed-Point Designer™.

Cronologia versioni

Introdotto in R2009b