Digital Signal Processing Reference
In-Depth Information
ohne die Endung
.m
. Nun wird das Programm abgearbeitet und die Sinusfunktion grafisch
dargestellt.
Im
Editor/Debugger-Window
wird das Programm über das Menü
Debug
)
Run
(bzw.
Save and Run
), oder kurz mit der Steuertaste F5,
zur Ausführung gebracht.
Anmerkung:
In MATLAB sind nützliche Debug-Werkzeuge eingebaut, mit denen Sie sich später vertraut
machen können.
Eine weitere Möglichkeit ein
M-File
zu starten ist die Auswahl des Programms mit der
rechten Maustaste im Fenster
Current Directory
und Wahl der Option
Run
.
Bei der Interpretation der Befehle prüft MATLAB zunächst, ob die eingegebene Zeichenkette
eine Größe im
Workspace
benennt. Ist das nicht der Fall, wird in den im
MATLAB Path
angegebenen Verzeichnissen nach einem
M-File
entsprechenden Namens gesucht. MAT-
LAB beginnt dabei immer im aktuellen Arbeitsverzeichnis. Das erste vom Namen passende
M-
File
wird ausgeführt.
1.2.8
Verkettete Programme und Unterprogramme
Das kleine Programmbeispiel in Bild 1-6 ist vom Prinzip her eine Verkettung von MATLAB-
Programmen. Taucht in einem
M-File
der Name eines weiteren
M-File
auf, so wird es
geöffnet und sein Inhalt wie Tastatureingaben im
Command Window
interpretiert. Alle neu
definierte Datenfelder werden im
Workspace
abgelegt und stehen auch nach der Bearbeitung
des
M-File
als globale Variablen zur Verfügung.
Dies ist für kleine Programmbeispiele sehr passend. Bei umfangreichen Projekten würden sich
jedoch sehr schnell folgende Probleme einstellen:
x
Überlastung des Arbeitsspeichers
x
unstrukturierte Programme
x
unzumutbare Programmlaufzeiten
x
häufige Programmierfehler und unbeabsichtigtes Überschreiben von Daten
MATLAB unterstützt deshalb MATLAB-eigene und anwenderdefinierte Funktionen. Bei den
MATLAB-eigenen Funktionen handelt es sich um
M-Files
oder in sich geschlossene
speicher- und laufzeitoptimierte Programm-Module.
Anwenderdefinierte Funktionen werden zwar prinzipiell wie Tastatureingaben im
Command
Window
interpretiert, besitzen aber eine definierte Schnittstelle zum aufrufenden Programm
und verwalten ihre Daten lokal. Das folgende Beispiel soll Ihnen das Arbeiten mit selbstdefi-
nierten Funktionen erläutern.
Wir wählen ein etwas anspruchsvolleres Beispiel aus der Signalverarbeitung, die Approxima-
tion eines periodischen Rechteckimpulszuges durch den Gleichanteil und die Harmonischen
der Fourier-Reihe.
Bild 1-7 zeigt einen Ausschnitt aus einem periodischen Rechteckimpulszug in normierter Dar-
stellung. Die Periode beträgt 1. Die Amplitude alterniert im Abstand der halben Periode zwi-
schen +1 und 0.