Contenu principal

Vector Concatenate

Concaténer les vecteurs d’entrée du même type de données pour un traitement itératif

  • Vector Concatenate block

Bibliothèques :
Simulink / Commonly Used Blocks
Simulink / Math Operations
Simulink / Signal Routing
HDL Coder / Math Operations
HDL Coder / Signal Routing

Autres configurations du bloc Vector Concatenate :
Matrix Concatenate

Description

Le bloc Vector Concatenate concatène les signaux d’entrée pour créer un signal non scalaire que vous pouvez traiter de manière itérative avec un sous-système, par exemple un sous-système for-each, while-iterator ou for-iterator.

Vous pouvez utiliser plusieurs blocs Vector Concatenate pour créer le signal de sortie en plusieurs étapes. Cependant, le résultat sera plat, comme si vous aviez utilisé un seul bloc pour concaténer les signaux.

Les signaux dans le signal de sortie apparaissent dans le même ordre que les signaux d’entrée pour le bloc. Pour connaître l’ordre des ports pour différentes orientations de bloc, consultez Identify Port Location on Rotated or Flipped Block.

Vous devez utiliser un bloc Vector Concatenate ou Matrix Concatenate pour définir un tableau de bus. Pour plus d’informations, consultez Group Nonvirtual Buses in Arrays of Buses.

Exemples

développer tout

Un bloc Vector Concatenate concatène les vecteurs qu’il reçoit, en les plaçant côte à côte dans le vecteur de sortie.

Par exemple, simulez le modèle VectorConcatenation.

Les vecteurs d’entrée [1 2] et [3 4] sont concaténés pour créer le vecteur de sortie [1 2 3 4].

Exemples étendus

Ports

Entrée(s)

développer tout

Première entrée à concaténer, spécifiée en tant que scalaire, vecteur, matrice ou tableau nD.

  • Les entrées doivent avoir le même type de données.

  • Les entrées de matrice et de tableau ne sont supportées que lorsque vous définissez Mode sur Multidimensional array.

Lorsque le type de données est un objet Simulink.Bus, les entrées doivent être des bus non virtuels.

Types de données : single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus | image

Nième entrée à concaténer, spécifiée en tant que scalaire, vecteur, matrice ou tableau nD.

  • Les entrées doivent avoir le même type de données.

  • Les entrées de matrice et de tableau ne sont supportées que lorsque vous définissez Mode sur Multidimensional array.

Dépendances

Pour ajouter des ports d’entrée, définissez Number of inputs sur un entier supérieur ou égal à 2.

Types de données : single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus | image

Sortie(s)

développer tout

Concaténation des signaux d’entrée le long de la dimension spécifiée. Les sorties doivent avoir le même type de données que l’entrée.

Types de données : single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus | image

Paramètres

développer tout

Pour modifier les paramètres du bloc de manière interactive, utilisez Property Inspector. Dans Simulink® Toolstrip, accédez à l'onglet Simulation. Dans la galerie Prepare, sélectionnez Property Inspector.

Spécifiez le nombre d’entrées pour le bloc en tant qu’entier positif à valeur réelle, inférieur ou égal à 65536.

Utilisation programmatique

Pour définir la valeur du paramètre du bloc de manière programmatique, utilisez la fonction set_param.

Paramètre : NumInputs
Valeurs : '2' (par défaut) | positive integer in quotes
Types de données : char | string

Exemple : set_param(gcb,'NumInputs','3')

Sélectionnez si le bloc fonctionne en mode concaténation de vecteurs ou concaténation de tableaux multidimensionnels. Le Mode par défaut du bloc Vector Concatenate est Vector. Le Mode par défaut du bloc Matrix Concatenate est Multidimensional array.

  • Lorsque vous sélectionnez Vector, le bloc effectue une concaténation de vecteurs.

  • Lorsque vous sélectionnez Multidimensional array, le bloc effectue une concaténation de matrices.

Paramètre ModeSignaux d’entréeSignal de sortie
Vector

  • Vecteurs

  • Vecteurs ligne (matrices 1 x M)

  • Vecteurs colonne (matrices M x 1)

  • Combinaison de vecteurs et de vecteurs ligne ou de vecteurs colonne

Lorsque toutes les entrées sont des vecteurs, la sortie est un vecteur.

Si l’une des entrées est un vecteur ligne ou un vecteur colonne, la sortie est un vecteur ligne ou un vecteur colonne, respectivement.

Multidimensional array

Signaux d’une dimensionnalité (scalaires, vecteurs et matrices)

La sortie est toujours un tableau.

Les dimensions de fin sont considérées comme étant de 1 pour les entrées de dimensionnalité inférieures. Par exemple, si la sortie est 4-D et que l’entrée est [2x3] (2-D), ce bloc traite l’entrée en tant que [2x3x1x1].

La concaténation est effectuée sur la dimension que vous spécifiez avec le paramètre Concatenate dimension.

Utilisation programmatique

Pour définir la valeur du paramètre du bloc de manière programmatique, utilisez la fonction set_param.

Paramètre : Mode
Valeurs : 'Vector' | 'Multidimensional array'

Exemple : set_param(gcb,'Mode','Vector')

Spécifiez la dimension de sortie le long de laquelle les tableaux d’entrée doivent être concaténés.

  • 1 : concaténer les entrées verticalement. La concaténation verticale des matrices empile les matrices d’entrée les unes sur les autres dans la matrice de sortie. Lorsque vous insérez un bloc Vector Concatenate et que vous définissez Mode sur Multidimensional array, la valeur par défaut est 1.

  • 2 : concaténer les entrées horizontalement. La concaténation horizontale des matrices place les matrices d’entrée côte à côte dans la matrice de sortie. Lorsque vous insérez un bloc Matrix Concatenate, la valeur par défaut est 2.

  • 3 ou plus : effectuer une concaténation multidimensionnelle sur les entrées.

Les matrices d’entrée doivent avoir des tailles compatibles pour pouvoir être concaténées. La concaténation verticale nécessite que les matrices d’entrée aient le même nombre de colonnes. La concaténation horizontale nécessite que les matrices d’entrée aient le même nombre de lignes.

Dépendances

Pour activer ce paramètre, définissez Mode sur Multidimensional array.

Utilisation programmatique

Pour définir la valeur du paramètre du bloc de manière programmatique, utilisez la fonction set_param.

Paramètre : ConcatenateDimension
Valeurs : scalar integer in quotes
Types de données : char | string

Exemple : set_param(gcb,'ConcatenateDimension','3')

Caractéristiques des blocs

Types de données

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

Traversée directe

oui

Signaux multidimensionnels

non

Signaux de taille variable

oui

Détection des passages à zéro

non

Configurations alternatives

développer tout

Le bloc Matrix Concatenate définit le Mode sur Multidimensional array.

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

Capacités étendues

développer tout

Génération de code C/C++
Générez du code C et C++ avec Simulink® Coder™.

Génération de code PLC
Générez du texte structuré avec Simulink® PLC Coder™.

Conversion en virgule fixe
Concevez et simulez des systèmes en virgule fixe avec Fixed-Point Designer™.

Historique des versions

Introduit dans R2009b