Main Content

Rappresentare i segnali

Array numerici

Il costrutto centrale di dati nell'ambiente MATLAB® è l'array numerico, un gruppo ordinato di dati numerici reali o complessi con due o più dimensioni. Gli oggetti di dati di base dell'elaborazione dei segnali (segnali o sequenze monodimensionali, segnali multicanale e segnali bidimensionali) sono tutti naturalmente adatti alla rappresentazione di array.

Rappresentazione vettoriale

MATLAB rappresenta normali segnali di dati campionati monodimensionali, o sequenze, come vettori. I vettori sono array 1 per n o n per 1, dove n è il numero di campioni nella sequenza. Un modo per introdurre una sequenza è quello di inserirla come elenco di elementi dal prompt di comando. La dichiarazione

x = [4 3 7 -9 1];

crea una semplice sequenza reale di cinque elementi in un vettore riga. La trasposizione trasforma la sequenza in vettore colonna

x = x';
x =
    4
    3
    7
   -9
    1

L'orientamento a colonna è preferibile per i segnali a canale singolo perché si estende naturalmente al caso multicanale. Per i dati multicanale, ogni colonna di una matrice rappresenta un canale. Ogni riga di tale matrice corrisponde quindi a un punto del campione. Un segnale a tre canali formato da x, 2x e x/π è

y = [x 2*x x/pi]
y =
    4.0000    8.0000    1.2732
    3.0000    6.0000    0.9549
    7.0000   14.0000    2.2282
   -9.0000  -18.0000   -2.8648
    1.0000    2.0000    0.3183

Se la sequenza contiene elementi di valore complesso, l'operatore della trasposizione prende il coniugato degli elementi della sequenza. Per trasformare un vettore riga di valore complesso in un vettore colonna senza prendere le coniugazioni, usare la trasposizione .' o la trasposizione non coniugata:

x = [1-i 3+i 2+3*i 4-2*i]; % 1-by-4 vector
x = x.';                   % 4-by-1 vector