Main Content

Signale darstellen

Numerische Arrays

Das zentrale Datenkonstrukt in der MATLAB®-Umgebung ist das numerische Array, eine geordnete Zusammenstellung reeller oder komplexer numerischer Daten mit zwei oder mehr Dimensionen. Die grundlegenden Datenobjekte der Signalverarbeitung (eindimensionale Signale oder Sequenzen, mehrkanalige Signale und zweidimensionale Signale) eignen sich aufgrund ihrer Natur für die Darstellung von Arrays.

Vektordarstellung

MATLAB stellt gewöhnliche eindimensionale abgetastete Datensignale, oder Sequenzen, als Vektoren dar. Vektoren sind 1Xn- oder nX1-Arrays, wobei n die Anzahl der Abtastungen in der Sequenz ist. Eine Möglichkeit zum Einfügen einer Sequenz ist die Eingabe der Sequenz als Elementeliste an der Eingabeaufforderung. Mit der Anweisung

x = [4 3 7 -9 1];

wird eine einfache, aus fünf Elementen bestehende reelle Sequenz in einem Zeilenvektor erstellt. Durch Transposition wird die Sequenz in einen Spaltenvektor umgewandelt

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

Die Spaltenausrichtung eignet sich vor allem für einkanalige Signale, da sie sich auf natürliche Weise auf den mehrkanaligen Fall erweitern lässt. Bei Mehrkanaldaten stellt jede Spalte einer Matrix einen Kanal dar. Jede Zeile einer solchen Matrix entspricht daher einem Abtastpunkt. Ein dreikanaliges Signal, das aus x, 2x und x/π besteht, ist

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

Wenn die Sequenz komplexwertige Elemente umfasst, verwendet der Transpositions-Operator den konjugierten Wert der Sequenzelemente. Für die Transformation des Vektors einer komplexwertigen Zeile in einen Spaltenvektor, ohne konjugierte Werte zu übernehmen, verwenden Sie .' oder die nicht konjugierte Transposition:

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