WILEY END USER LICENSE AGREEMENT
Besuchen Sie www.wiley.com/go/eula, um Wiley's E-Book-EULA einzusehen.
Inhaltsverzeichnis
Über die Autoren
Einleitung
Über dieses Buch
Törichte Annahmen über die Leser
Die Symbole in diesem Buch
Über das Buch hinaus
Wie es weitergeht
Teil I: Erste Schritte mit MATLAB
Kapitel 1: MATLAB mit seinen vielen Möglichkeiten kennen lernen
MATLAB einordnen
Verstehen, wie sich MATLAB zu einer Turing-Maschine verhält
Über MATLAB als Taschenrechner hinausgehen
Herausfinden, warum Sie MATLAB brauchen
Die anderen MATLAB-Anwender kennenlernen
Das meiste aus MATLAB herausholen
Grundlegende Fähigkeiten am Computer erwerben
Die mathematischen Anforderungen festlegen
Anwenden, was Sie schon von anderen prozeduralen Programmiersprachen wissen
Verstehen, wie Ihnen dieses Buch hilft
Die Lernkurve erklimmen
Kapitel 2: MATLAB installieren und verwenden
MATLAB installieren
Herausfinden, welche Plattformen MATLAB unterstützt
Ihr persönliches Exemplar von MATLAB erhalten
Die Installation durchführen
MATLAB aktivieren
Die Benutzeroberfläche kennenlernen
MATLAB das erste Mal starten
Das Anweisungsfenster verwenden
Das Aktuelles-Verzeichnis-Fenster verwenden
Das Fenster mit dem aktuellen Verzeichnis verwenden
Das Layout von MATLAB ändern
Kapitel 3: Mit MATLAB arbeiten
MATLAB als Taschenrechner verwenden
Informationen an der Eingabeaufforderung eingeben
Eine Formel eingeben
Formeln kopieren und einfügen
Die Formatierung des Anweisungsfensters ändern
Ausgaben des Anweisungsfensters unterdrücken
Die mathematische Syntax von MATLAB verstehen
Addieren, Subtrahieren, Multiplizieren und Dividieren
Mit Exponenten arbeiten
Aufbewahrungsboxen verwenden
Die Variable ans verwenden – die Standardaufbewahrungsbox
Ihre eigenen Aufbewahrungsboxen erzeugen
Über MATLAB als Taschenrechner hinausgehen
Die Wahrheit lernen
Eingebaute Funktionen verwenden
Den Funktions-Browser benutzen
Sich von Fehlern erholen
Die Fehlermeldungen von MATLAB verstehen
MATLAB anhalten, wenn es sich aufgehängt hat
Hilfe erhalten
Die Dokumentation erforschen
Sich durch die Beispiele arbeiten
Sich auf Mitstreiter verlassen
Schulungen erhalten
Unterstützung durch MathWorks anfragen
Kapitel 4: MATLAB-Dateien erzeugen, bearbeiten und speichern
Die Dateistruktur von MATLAB untersuchen
MATLAB-Dateien und ihre Aufgaben verstehen
Verzeichnisse mit der Benutzeroberfläche (GUI) erforschen
Verzeichnisse mit der Kommandozeile erforschen
In MATLAB mit Dateien arbeiten
Auf MATLAB-Dateien zugreifen und sie teilen
Dateien öffnen
Dateien importieren
Dateien exportieren
Ihre Arbeit sichern
Variablen mit der Benutzeroberfläche speichern
Variablen mit Anweisungen speichern
Anweisungen mithilfe der Benutzeroberfläche speichern
Anweisungen mithilfe von Anweisungen speichern
Teil II: Daten in MATLAB bearbeiten und grafisch darstellen
Kapitel 5: Vektoren, Matrizen und höhere Dimensionen verarbeiten
Mit Vektoren und Matrizen arbeiten
MATLABs Sicht auf lineare Algebra verstehen
Daten eingeben
Addieren und Subtrahieren
Die vielen Wege der Multiplikation und Division verstehen
Skalare Multiplikation und Division betreiben
Matrixmultiplikation anwenden
Matrizen dividieren
Potenzen von Matrizen berechnen
Elementweise arbeiten
Komplexe Zahlen verwenden
Mit der Exponentialfunktion arbeiten
In höheren Dimensionen arbeiten
Eine mehrdimensionale Matrix erzeugen
Auf eine mehrdimensionale Matrix zugreifen
Einzelne Elemente einer Matrix ersetzen
Mehrere Elemente einer Matrix als Bereich ersetzen
Die Matrixgröße verändern
Die Datenstrukturen cell array und structure verwenden
Die Matrix-Hilfe verwenden
Kapitel 6: Die Grundlagen der Grafik verstehen
Grafik in MATLAB verstehen
Was Sie mit Grafiken tun können
MATLAB-Grafik mit den Diagrammen einer Tabellenkalkulation vergleichen
Eine Grafik mithilfe von Anweisungen erstellen
Eine Grafik mithilfe des Arbeitsbereichsfensters erstellen
Eine Grafik mithilfe des Reiters Plots erstellen
Die Funktion plot()
verwenden
Mit Linienfarbe, Symbolen und Linientyp arbeiten
Mehrere Grafiken mit einer Anweisung erzeugen
Grafiken verändern
Einfache Veränderungen vornehmen
Einer Grafik eine weitere hinzufügen
Eine Grafik löschen
Mit Untergrafiken arbeiten
Zweidimensionale Informationen darstellen
Kapitel 7: Komplexe Grafikfunktionen verwenden
Dreidimensionale Informationen darstellen
Mit der Funktion bar()
ein flaches 3D-Balkendiagramm erzeugen
Mit der Funktion bar3()
ein räumliches 3D-Diagramm erzeugen
Die Funktion barh()
und weitere verwenden
Ihre Grafiken aufwerten
Einen Zeiger auf die Achsen erhalten
Achsenbeschriftungen verändern
Eine Überschrift hinzufügen
Beschriftungen drehen
Anmerkungen hinzufügen
Ihre Grafik ausdrucken
Teil III: MATLAB effizient nutzen
Kapitel 8: Abläufe automatisieren
Verstehen, was Skripte tun
Ihr Arbeitspensum reduzieren
Festlegen, wann Sie ein Skript verwenden
Ein Skript erstellen
Ihr erstes Skript schreiben
Anweisungen für Benutzereingaben verwenden
Kopieren und in ein Skript einfügen
Die Anweisungshistorie in ein Skript umwandeln
Lange Zeichenketten fortsetzen
Ihren Skripten Kommentare hinzufügen
Skripte überarbeiten
Skripte aufrufen
Skripte schneller machen
Skripte nach Fehlern durchsuchen
Kapitel 9: MATLAB mit Funktionen weiter ausreizen
Mit eingebauten Funktionen arbeiten
Etwas über eingebaute Funktionen lernen
Daten übergeben und herausbekommen
Eine Funktion erzeugen
Den Unterschied zwischen einem Skript und einer Funktion verstehen
Die Unterschiede zwischen eingebauten und eigenen Funktionen verstehen
Ihre erste Funktion schreiben
Die neue Funktion verwenden
Daten an die Funktion übergeben
Daten von der Funktion erhalten
Globale Variablen erzeugen und verwenden
Unterfunktionen verwenden
Funktionen verschachteln
Weitere Funktionstypen verwenden
Inline-Funktionen verwenden
Anonyme Funktionen verwenden
Kapitel 10: Skripte strukturieren
Entscheidungen treffen
Die if-Anweisung verwenden
Die switch-Anweisung verwenden
Das besondere an switch verstehen
Sich zwischen if und switch entscheiden
Rekursive Funktionen erzeugen
Aufgaben wiederholt ausführen
Die for-Anweisung verwenden
Die while-Anweisung verwenden
Die Verarbeitung mit break beenden
Die Verarbeitung mit return beenden
Die richtige Schleife aussuchen
Menüs erzeugen
Teil IV: Fortgeschrittene Methoden in MATLAB anwenden
Kapitel 11: Daten importieren und exportieren
Daten importieren
Grundlegende Schritte beim Import
Gemischte Zahlen und Texte importieren
Das Feldtrennzeichen festlegen
Nur ausgewählte Zeilen und Spalten importieren
Daten exportieren
Grundlegende Schritte beim Export
Skripte und Funktionen exportieren
Mit Bildern arbeiten
Bilder exportieren
Bilder importieren
Kapitel 12: Ihre Ergebnisse drucken und publizieren
Mit Anweisungen Texte formatieren
Das Schriftbild beeinflussen
Sonderzeichen verwenden
Mathematische Symbole verwenden
Ihre MATLAB-Daten publizieren
Fortgeschrittene Techniken beim Publizieren von Skripten und Funktionen
Abbildungen speichern
Ihre Arbeit drucken
Die Ausgabeseite konfigurieren
Die Daten drucken
Kapitel 13: Sich von Fehlern erholen
Mit Fehlermeldungen umgehen
Auf Fehlermeldungen reagieren
Die Klasse MException verstehen
Fehler- und Warnmeldungen einsetzen
Modi für Warnmeldungen einstellen
Fehlermeldungen per E-Mail verschicken
Hilfe für bekannte Fehlermeldungen suchen
Ihre eigenen Fehlermeldungen schreiben
Die maßgeschneiderte Fehlermeldung entwerfen
Nützliche Fehlermeldungen erstellen
Guten Programmierstil anwenden
Teil V: Spezialeinsätze für MATLAB
Kapitel 14: Gleichungen lösen und Nullstellen finden
Mit der Symbolic Math Toolbox arbeiten
Eine Version der Toolbox erhalten
Die Symbolic Math Toolbox installieren
Mit der grafischen Benutzeroberfläche arbeiten
Eine einfache Anweisung im Anweisungsfenster eingeben
Algebraische Aufgaben lösen
Zwischen numerischer und symbolischer Algebra unterscheiden
Quadratische Gleichungen lösen
Mit kubischen und anderen nichtlinearen Gleichungen arbeiten
Interpolation verstehen
Mit Statistik umgehen
Deskriptive Statistik verstehen
Robuste Statistik verstehen
Die Methode der kleinsten Quadrate anwenden
Kapitel 15: Analysis und lineare Algebra einsetzen
Mit linearer Algebra arbeiten
Mit Determinanten arbeiten
Matrizen reduzieren
Eigenwerte berechnen und verwenden
Faktorzerlegungen berechnen und verstehen
Mit Analysis arbeiten
Differentialrechnung betreiben
Integralrechnung betreiben
Analysis mit mehreren Variablen betreiben
Differentialgleichungen lösen
Numerische Methoden anwenden
Geschlossene Lösungen finden
Kapitel 16: Richtig schicke Diagramme erzeugen
Verstehen, was eine Supergrafik ausmacht
Eine Grafik mit Extras aufwerten
Die Funktion grid()
verwenden
Die aktuelle Achse mithilfe des Zeigers gca
ermitteln
Achsen mit der Funktion datetick()
beschriften
Diagramme mit der Funktion colorbar()
aufwerten
Mit daspect
arbeiten
Mit pbaspect
arbeiten
Grafik-Routinen verwenden
Fehlerbalken mit der Funktion errorbar()
erzeugen
Mit pareto()
ein Paretodiagramm erstellen
Mit stairs()
ein Treppendiagramm darstellen
Mit stem()
Daten als Stiel von einer Grundlinie darstellen
Mit fill()
Bilder zeichnen
Mit quiver()
Geschwindigkeitsfelder darstellen
Mit feather()
Geschwindigkeitsfelder darstellen
Mit compass()
Kompassnadeln zeichnen
Mit polar()
Polarkoordinaten darstellen
Mit rose()
Winkelverteilungen darstellen
Mit spy()
die Besetzung von dünnbesetzten Matrizen darstellen
Animationen einbauen
Mit kleinen Filmen arbeiten
Mit Objekten umgehen
Daten aktualisieren
Teil VI: Der Top-Ten-Teil
Kapitel 17: Die Top Ten der Anwendungsgebiete von MATLAB
MATLAB im Ingenieurswesen
MATLAB in der Ausbildung
MATLAB in der linearen Algebra
MATLAB in der angewandten Mathematik
MATLAB in der Wissenschaft
MATLAB und die Freude an der Mathematik
MATLAB und die Forschung
MATLAB und Simulationen
MATLAB und Bildverarbeitung
MATLAB und Programmentwicklung
Kapitel 18: Zehn Wege, um von MATLAB zu leben
Grüne Technologien umsetzen
Blindgänger finden
Spracherkennungssoftware entwickeln
Krankheiten unter Kontrolle bekommen
Designer für Computerchips werden
Lastkraftwagen entwickeln
In die Produktentwicklung gehen
Ausrüstung für Einsätze unter freiem Himmel entwickeln
Die Familienplanung unterstützen
Mit Simulation Risiken reduzieren
Anhang A: MATLAB-Funktionen
Anhang B: Grafikroutinen in MATLAB
Stichwortverzeichnis
Wiley End User License Agreement
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de
abrufbar.
1. Auflage 2016
© 2016 WILEY-VCH Verlag GmbH & Co. KGaA, Weinheim
Original English language edition MATLAB For Dummies © 2015 by Wiley Publishing, Inc. All rights reserved including the right of reproduction in whole or in part in any form. This translation published by arrangement with John Wiley and Sons, Inc.
Copyright der englischsprachigen Originalausgabe MATLAB For Dummies © 2015 by Wiley Publishing, Inc. Alle Rechte vorbehalten inklusive des Rechtes auf Reproduktion im Ganzen oder in Teilen und in jeglicher Form. Diese Übersetzung wird mit Genehmigung von John Wiley and Sons, Inc. publiziert.
Wiley, the Wiley logo, Für Dummies, the Dummies Man logo, and related trademarks and trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries. Used by permission.
Wiley, die Bezeichnung »Für Dummies«, das Dummies-Mann-Logo und darauf bezogene Gestaltungen sind Marken oder eingetragene Marken von John Wiley & Sons, Inc., USA, Deutschland und in anderen Ländern.
Das vorliegende Werk wurde sorgfältig erarbeitet. Dennoch übernehmen Autoren und Verlag für die Richtigkeit von Angaben, Hinweisen und Ratschlägen sowie eventuelle Druckfehler keine Haftung.
Coverfoto: agsandrew/Shutterstock.com
Korrektur: Dr. Jan-Peter Ismer, Berlin und Leonie Christel, Forchheim
Satz: SPi-Global, Chennai
Print ISBN: 978-3-527-71167-3
ePub ISBN: 978-3-527-80871-7
mobi ISBN: 978-3-527-80870-0
Über die Autoren
Jim Sizemore ist Professor für Physik und Ingenieurwesen mit einem Master of Science in Physik von der Universität von Kalifornien – San Diego – und einem PhD in Materialwissenschaften von der Stanford Universität. Er arbeitete lange in der Halbleiterindustrie, wo er sich in vielen Projekten insbesondere mit Diffusion und Oxidation, Widerstandskraft gegen Strahlung sowie Optoelektronik beschäftigte. Nach seiner Karriere in der Privatwirtschaft wendete er sich verstärkt der Lehre zu und ist gegenwärtig Professor für Physik und Ingenieurwesen am Tyler Junior College in Tyler, Texas. Dort initiierte er einen populärwissenschaftlichen Club, in dem Studenten mehrere Projekte entwerfen und umsetzen konnten, zum Beispiel ein Zwei-Meter-Trébuchet (riesige Steinschleuder), falls sie mal in die Verlegenheit kommen, eine umliegende Burg anzugreifen. Aktuell lehrt er auch Programmieren für Ingenieure mit MATLAB als primärer Programmiersprache. Schauen Sie gern mal auf http://iteach.org/funphysicist/
nach. Zwar liebt er lehren und lernen, fotografiert aber auch gern und fährt Fahrrad.
John Paul Mueller ist freier Autor und technischer Herausgeber. Das Schreiben liegt ihm im Blut: Er hat bis heute 96 Bücher und etwa 300 Artikel herausgegeben. Die Themen reichen von Netzwerken bis hin zu künstlicher Intelligenz oder von Datenbankadministration bis hin zur Programmierung. Einige seiner jüngsten Bücher sind Python for Beginners, ein JavaScript-eLearning-Set, ein Buch über HTML5-Entwicklung mit JavaScript und ein weiteres über CSS3. Seine Erfahrung als Herausgeber hat schon mehr als 60 Autoren geholfen, ihre Manuskripte zu verfeinern und zu verbessern. Die Entwicklung im Bereich MATLAB verfolgt er seit etwa einer Dekade. Als technischer Herausgeber war John für die Magazine Data Based Advisor und Coast Compute tätig. Während seiner Zeit bei Data Based Advisor kam er zum ersten Mal mit MATLAB in Kontakt und hat seitdem die Entwicklung der Software hautnah verfolgt. Schauen Sie gern mal bei seinem Blog herein unter http://blog.johnmuellerbooks.com
.
Wenn John nicht am Computer sitzt, finden Sie ihn draußen im Garten, beim Bäumeschneiden oder während er einfach so die Natur genießt. John stellt auch gern Wein her, backt Kekse und strickt. Wenn er nicht etwas anderes tut, stellt er Glyzerinseife und -kerzen her, die in Geschenkkörben für Freude sorgen. Sie erreichen John unter john@johnmullerbooks.com. John erstellt auch gerade eine Webseite unter http://www.johnmullerbooks.com
. Schauen Sie gern mal rein und geben Sie John Hinweise und Tipps, was er verbessern kann – und was Ihnen schon jetzt gefällt.
Über den Übersetzer
Karl-Kuno Kunze erwarb Diplome in Physik und in Wirtschaftsphysik, ein DEA de Physique des Liquides der Universität Paris und ein MSc in Mathematical Finance der Universität Oxford. Er promovierte zunächst in theoretischer Physik, dann in Wirtschaftswissenschaft. Nach über zehnjähriger Praxis in der Anwendung quantitativer Modelle in der Finanzwirtschaft ist er jetzt Professor für Wirtschaftsmathematik und -statistik an der Ostfalia Hochschule Braunschweig/Wolfenbüttel und leitet das R Institute (www.r-institute.com
). Das R Institute bietet neben einer Plattform für professionelle Anwender der Software R Hosting für Web-Anwendungen zur Datenanalyse mit R sowie Analytics als Managed Service – quasi als externe Statistik-Abteilung – an. Darüber hinaus veranstaltet es Schulungen im Bereich Datenanalyse, Finanzmarktstatistik und Predictive Analytics und bietet Support und Qualitätssicherung für Projekte mit R. Sowohl R als auch MATLAB sind aus diesen Bereichen nicht wegzudenken.
Für die »Für Dummies«-Reihe hat Karl-Kuno bereits »R für Dummies« ins Deutsche übersetzt und »Ökonometrie für Dummies« als Koautor mitgeschrieben. An dieser Stelle sei dem Wiley Verlag, insbesondere Vanessa Schweiß und Kerstin Tüchert, für die angenehme Zusammenarbeit gedankt.
Sie finden alle MATLAB-Beispiele zu diesem Buch auf der Webseite http://www.r-institute.com/matlab_fuer_dummies
. Hier finden Sie auch alle Verknüpfungen zu den Online-Ressourcen im Buch. Sollten Sie Fragen oder Anmerkungen haben, schreiben Sie gern an mail@r-institute.com
.
Über den Fachkorrektor
Jan-Peter Ismer ist Berater für die Finanzindustrie und arbeitet mit MATLAB seit 2004. Er ist Physiker (Diplom), Informatiker (B.Sc.) und durch die PRMIA zertifizierter Professional Risk Manager.Während seiner Promotion in theoretischer Physik hat er Hochtemperatursupraleitung mithilfe von MATLAB untersucht. Nach etwa fünf Jahren als Berater ist er seit Kurzem Geschäftsführer der Unternehmensberatung RAppLify. Seine Projekte sind meist im Bereich quantitatives Risikomanagement angesiedelt. Dabei kommt auch immer wieder MATLAB zum Einsatz. Außerdem unterrichtet er als Fachmentor an der FernUniversität in Hagen Informatik. Er lebt mit seiner Frau und seinem Sohn in Berlin.
Einleitung
MATLAB ist ein großartiges Produkt, mit dem Sie alle möglichen quantitativen Arbeiten durchführen können. Dabei verwenden Sie im Wesentlichen dieselben Methoden, als würden Sie per Hand arbeiten (zum Beispiel mit Papier und Bleistift, einem Rechenschieber, einem Abakus und natürlich einem Taschenrechner). MATLAB kann das aber mit einer Geschwindigkeit, die Computern vorbehalten bleibt. Darüber hinaus machen Sie mit MATLAB weniger Fehler, ersparen sich so manchen Umweg und werden generell effizienter. Demgegenüber verfügt MATLAB über eine riesige Methodenvielfalt und liefert Ihnen Funktionalitäten, die Sie bisher wahrscheinlich noch nie benutzt haben. Beispielsweise können Sie über die reine Zahlenwelt hinausgehen, indem Sie Ihre Ergebnisse auf verschiedenste Weise grafisch aufbereiten und so noch besser kommunizieren können. Damit Sie von all dem gebührlich profitieren können, brauchen Sie nur noch ein Buch wie MATLAB für Dummies. Und hier ist es!
Über dieses Buch
Die Hauptaufgabe von MATLAB für Dummies ist, die Lernkurve, welche bei Programmen wie MATLAB mit so vielen Möglichkeiten naturgemäß steil ist, etwas flacher zu machen. Wenn Sie MATLAB zum ersten Mal öffnen, sind Sie wahrscheinlich überwältigt. Mit diesem Buch kommen Sie über diesen ersten Schock hinaus und werden so schnell produktiv, dass Sie sich schon sehr bald wieder Ihrer Lieblingsbeschäftigung widmen können: in Mathematik zu glänzen.
Darüber hinaus will Sie dieses Buch auch an Techniken heranführen, die Sie wahrscheinlich noch gar nicht kennen oder vermisst haben, weil Sie sie vorher noch nicht gesehen haben. Zum Beispiel verfügt MATLAB über ein reichhaltiges Angebot von Grafik-Funktionen, die Ihnen nicht nur die Kommunikation erleichtern, sondern auch dabei helfen, anderen Ihren quantitativ fundierten Standpunkt noch besser nahezubringen. Mit den Skripten und Funktionen können Sie Ihre Arbeit noch weiter erleichtern. In diesem Buch lesen Sie, wie Sie individuellen Code schreiben und MATLAB Ihren persönlichen Bedürfnissen anpassen.
Nachdem Sie erfolgreich MATLAB auf Ihrem Rechner installiert haben, beginnen Sie mit den Grundlagen und arbeiten sich dann schrittweise voran. Wenn Sie dann Ihren Weg durch die Beispiele in diesem Buch gemacht haben, können Sie eine Reihe von einfachen und nicht mehr ganz so einfachen Arbeiten ausführen. Dazu gehören Skripte schreiben, Funktionen erstellen, Grafiken entwerfen und Gleichungen lösen. Sie werden sicher noch kein Experte sein, aber immerhin werden Sie MATLAB mit Freude und Erfolg in Ihren Arbeitsalltag integrieren können.
Damit Sie die dargestellten Konzepte noch besser aufnehmen können, verwenden wir im Buch folgende Konventionen:
Text, den Sie so, wie er dasteht, eingeben sollen, erscheint fett. Die einzige Ausnahme sind die Kochrezepte: Da jeder einzelne Schritt fett gedruckt ist, wird der einzugebende Text normal gedruckt.
Wenn Sie in einem einzugebenden Text Wörter in kursiver Schrift lesen, ersetzen Sie sie durch etwas, was für Ihren Fall zutrifft. Wenn Sie also »Geben Sie Ihren Namen ein und drücken Sie ENTER« lesen, ersetzen Sie bitte Ihren Namen durch Ihren Namen.
Webadressen und Programm-Code erscheinen in monofont
. Sollten Sie die digitale Version dieses Buches lesen und mit dem Internet verbunden sind, können Sie auf die Adresse klicken, um die Webseite aufzurufen, etwa so: http://www.fuer-dummies.de
.
Wenn Sie Abfolgen von Anweisungen eingeben sollen, erscheinen diese durch einen speziellen Pfeil separiert, etwa so: Datei ➪ Neue Datei. In diesem Fall klicken Sie zunächst auf Datei in der Menüzeile und anschließend auf Neue Datei. Im Ergebnis haben Sie dann eine neue Datei erzeugt.
Törichte Annahmen über die Leser
Sie werden kaum glauben können, dass wir Annahmen über Sie getroffen haben – immerhin sind wir uns noch nicht begegnet! Insofern sind die meisten unserer Annahmen sicher tatsächlich töricht, die folgenden waren aber einfach nötig, um mit dem Buch überhaupt anfangen zu können.
Es ist wichtig, dass Sie sich mit dem Betriebssystem auskennen, auf dem Sie arbeiten. Dazu sagt dieses Buch nämlich gar nichts. Wie Sie MATLAB installieren, lesen Sie allerdings schon – in Kapitel 2. Um Ihnen so viele Informationen wie möglich über MATLAB zu liefern, verzichten wir völlig auf plattformspezifische Details. Wir setzen also voraus, dass Sie Anwendungen installieren, diese verwenden und mit der von Ihnen verwendeten Plattform umgehen können, bevor Sie die Arbeit mit diesem Buch beginnen.
Das Buch ist keine Mathe-Nachhilfe. Es stimmt zwar, dass Sie darin viele Beispiele komplexer mathematischer Zusammenhänge sehen, das Hauptaugenmerk liegt jedoch darauf, Ihnen den Einsatz von MATLAB für diese Themen vorzustellen. In Kapitel 1 lesen Sie mehr darüber, was Sie genau an mathematischen Vorkenntnissen brauchen, um erfolgreich mit diesem Buch arbeiten zu können.
Wir setzen voraus, dass Sie Zugang zum Internet haben. Über den ganzen Text verstreut gibt es zahlreiche Hinweise auf Online-Material, das Ihnen das Lernen noch angenehmer und abwechslungsreicher macht. Damit die Quellen Ihnen nützen, müssen Sie allerdings die Möglichkeit haben, darauf zuzugreifen.
Die Symbole in diesem Buch
Beim Lesen des Buches werden Ihnen immer wieder Symbole am Rand auffallen, die Ihnen spannende (oder nicht so spannende) Aspekte und Themen aufzeigen. Hier sind die einzelnen Symbole mit Erklärungen.
Über das Buch hinaus
Dieses Buch ist nicht das Ende der MATLAB-Show – es ist erst der Anfang! Folgende Ressourcen halten weiteres Material für Sie bereit, damit Sie noch mehr Nutzen aus MATLAB für Dummies ziehen können. Auf diese Weise können wir auf Mails von Ihnen reagieren und schreiben, wie sich Updates von MATLAB oder Zusatzpaketen auf den Inhalt des Buches auswirken. Folgende coole Sachen warten auf Sie:
Updates: Die Welt dreht sich immer weiter, und auch MATLAB wird kontinuierlich weiterentwickelt. Da kann es passieren, dass wir die eine oder andere Entwicklung beim Schreiben des Buches nicht vorausgesehen haben und jetzt nachjustieren müssen. Früher bedeutete dies, dass ein Buch veraltete und man die nächste Auflage kaufen musste. Heute gehen Sie einfach ins Internet und laden sich Aktualisierungen herunter: http://www.dummies.com/extras/matlab
(englisch)
Darüber hinaus sind Sie auch herzlich eingeladen, den Blog von John Mueller unter http://www.johnmuellerbooks.com
zu besuchen. Hier finden Sie Antworten auf Leserfragen und zum Buch gehörende Tipps und Tricks (englisch).
Begleitmaterial: Mal ehrlich: Wer hat schon Lust, den Code im Buch abzutippen und alle Grafiken nachzubauen? Die meisten Leser würden doch Ihre Zeit lieber nutzen, um mit MATLAB zu arbeiten und zu sehen, welche interessanten Dinge es für sie tun kann. Ein Schreibmaschinenkurs ist nicht so angesagt. Zum Glück stehen die Beispiele im Buch zum Herunterladen bereit. So können Sie sich voll auf das Lesen und Verstehen des Buches konzentrieren. Die Dateien finden Sie unter www.downloads.fuer-dummies.de
.
Wie es weitergeht
Es ist Zeit für das MATLAB-Abenteuer! Wenn Sie hinsichtlich MATLAB bei null anfangen, ist es am besten, wenn Sie mit Kapitel 1 anfangen und sich dann in Ihrem eigenen Tempo durch das Buch arbeiten. So können Sie so viel Material aufsaugen wie möglich.
Wenn Sie zwar ein Neuling sind, aber unter Zeitdruck stehen und aus irgendeinem Grund so schnell wie möglich mit MATLAB loslegen wollen, springen Sie gleich zu Kapitel 2, obwohl Ihnen dann später ein paar Sachen verwirrend vorkommen können. Gleich mit dem dritten Kapitel zu beginnen könnte funktionieren, wenn Sie MATLAB bereits installiert haben, wir empfehlen jedoch dringend, Kapitel 2 wenigstens einmal querzulesen, damit Sie wissen, welche Konventionen wir im Buch verwenden.
Leser mit etwas Erfahrung in MATLAB können Lesezeit sparen, indem Sie direkt zu Kapitel 5 springen. Wenn Fragen aufkommen, können Sie immer noch zurückblättern. Es ist jedoch essenziell, dass Sie die eine Technik verstanden haben, bevor Sie zur nächsten weitergehen. Jede Technik, jedes Code-Beispiel und jede Vorgehensweise hält wichtige Informationen für Sie bereit. Wenn Sie allzu beherzt durch das Buch springen, könnten Sie wesentliche Inhalte verpassen.
Teil I
Erste Schritte mit MATLAB
Kapitel 1
MATLAB mit seinen vielen Möglichkeiten kennen lernen
In diesem Kapitel…
Verstehen Sie, wie Sie MATLAB einsetzen, um mathematische Aufgaben zu lösen.
Sehen Sie, wo MATLAB überall eingesetzt wird.
Entdecken Sie, wie Sie das meiste aus MATLAB herausholen.
Erklimmen Sie die Lernkurve.
Mathematik ist die Basis all unserer Wissenschaften und zum Teil sogar der Künste. In der Tat kann Mathematik selbst eine Ausprägung von künstlerischer Arbeit sein – denken Sie nur an die Schönheit von Fraktalen (die grafische Darstellung von bestimmten Gleichungen). Auf der anderen Seite kann Mathematik auch recht abstrakt wirken und sehr schwierig und komplex erscheinen. MATLAB macht die Arbeit mit Mathematik leichter. Sie können MATLAB verwenden, um quantitative Aufgaben zu bearbeiten, wie
Numerische Berechnungen
Visualisierung
Programmierung
Dieses Kapitel macht Sie mit MATLAB vertraut, dem Softwarepaket für verschiedenste mathematische Aufgaben. Hier lernen Sie die Rolle kennen, die MATLAB dabei spielen kann, die Komplexität mathematischer Fragestellungen zu reduzieren oder quantitative Zusammenhänge für andere besser verständlich zu machen. Sie werden auch feststellen, dass MATLAB schon jetzt von einer großen Zahl von Unternehmen, Institutionen und Organisationen verwendet wird, um damit echte Probleme exakt und effizient zu lösen. Es ist sicher interessant zu sehen, wie Sie die verschiedenen Anwendungsfälle auf Ihren Arbeitsalltag übertragen können.
Weil MATLAB so mächtig ist, hat es eine recht steile Lernkurve. In diesem Kapitel lernen Sie deshalb auch, wie Sie die Kurve flacher machen können, um schneller produktiv und kreativ zu werden. Je weniger Zeit Sie für das Lernen aufwenden, desto mehr Zeit bleibt für die Anwendung auf Ihr jeweiliges Anwendungsfeld und desto besser werden Ihre Ergebnisse. Probleme schnell und exakt zu lösen ist das über allem stehende Ziel von MATLAB.
MATLAB einordnen
In MATLAB geht es um Mathematik. Ja, es ist ein mächtiges Werkzeug, und ja, es verwendet eine eigene Sprache, um das Lösen mathematischer Probleme schneller, leichter und konsistenter zu machen. Am Schluss liegt das Hauptaugenmerk von MATLAB jedoch auf Mathematik. Sie können zum Beispiel 2 + 2 als Gleichung eingeben und MATLAB würde pflichtbewusst die Summe 4 als Ergebnis zurückliefern. Dafür würde allerdings niemand Geld ausgeben – wenn nicht im Kopf, können Sie solch ein Ergebnis leicht mit dem Taschenrechner erzielen. Wir müssen also noch mehr verstehen, was MATLAB eigentlich macht. Die folgenden Abschnitte helfen Ihnen dabei. So können Sie besser einordnen, auf welche Art Sie MATLAB erfolgreich einsetzen können.
Verstehen, wie sich MATLAB zu einer Turing-Maschine verhält
Heutige Computer sind überwiegend Turing-Maschinen, nach dem britischen Mathematiker Alan Turing (1912 bis 1954). Das wesentliche Merkmal einer Turing-Maschine ist, Ihre Aufgaben Schritt für Schritt abzuarbeiten. Ein einzelner Prozessor verarbeitet eine Anweisung nach der anderen. Er kann an verschiedenen Aufgaben arbeiten, aber zu jedem Zeitpunkt wird nur ein Schritt einer bestimmten Aufgabe gleichzeitig ausgeführt. Die Kenntnis des Konzepts der Turing-Maschine ist deshalb sinnvoll, weil MATLAB nach der gleichen Strategie arbeitet. Es führt einen Schritt nach dem anderen aus. Sie können sogar ein MATLAB-Programm herunterladen, welches eine Turing-Maschine simuliert: http://www.mathworks.com/MATLABcentral/fileexchange/23006-turing-machine-emulator/content/@turing/turing.m
. Das Programm ist überraschend kurz.
Über MATLAB als Taschenrechner hinausgehen
MATLAB ist eine Programmiersprache, nicht nur ein Taschenrechner. Dennoch können Sie es als Taschenrechner verwenden und es ist gar keine schlechte Vorgehensweise, Ihre Ideen erst einmal auf diese Weise auszuprobieren und dann in Ihrem Programm zu benutzen. Wenn Sie dann über das Experimentierstadium hinaus gekommen sind, werden Sie mit MATLAB erfahrungsgemäß Programme schreiben, die
konsistent
einfach
schnell
die gewünschte Aufgabe lösen.
Mit diesen drei Eigenschaften im Hinterkopf erklären die nächsten Abschnitte im Detail, warum MATLAB mehr als ein einfacher Taschenrechner ist. Hier lernen Sie noch nicht alles, was MATLAB für Sie tun kann, aber Sie erhalten einen Überblick, wie Sie es zu Ihrem Vorteil einsetzen können.
Mathematik, Informatik, Naturwissenschaften und Technik (MINT) erkunden
Hochschulen haben besonderes Augenmerk auf Mathematik, Informatik, Naturwissenschaften und Technik (MINT), weil es nach wie vor nicht ausreichend viele Personen gibt, die sich damit auskennen, um die anfallende Arbeit zu erledigen. Innovationen aller Art, aber auch das tägliche Geschäft erfordern Kenntnisse in diesen Disziplinen. MATLAB hält dafür eine reichhaltige Werkzeugkiste bereit. Sie umfasst
Statistik
Simulation
Bildverarbeitung
Symbolische Algebra
Numerische Analyse
Einfache Arbeiten ausführen
Viele Programmierer lernen Ihre Zunft mit einer älteren Programmiersprache namens Basic. Ursprünglich wurde sie BASIC geschrieben für Beginner's all-Purpose Symbolic Instruction Code (etwa: symbolische Allzweck-Programmiersprache für Anfänger). Die Intention bei ihrer Entwicklung war, eine einfache Sprache zu entwickeln. MATLAB behält die Einfachheit bei, umfasst jedoch eine riesige Werkzeugkiste für MINT-Anwendungen. Dahinter steht die Idee, dass Sie wahrscheinlich Besseres zu tun haben, als eine komplexe Programmiersprache zu lernen, die Anforderungen erfüllt, die Sie wahrscheinlich niemals haben werden.
Herausfinden, warum Sie MATLAB brauchen
Es ist äußerst wichtig zu wissen, wie man eine Anwendung verwendet, mindestens genauso wichtig ist es jedoch zu wissen, wann man eine Anwendung einsetzt und was sie dem Unternehmen oder der Institution eigentlich bringt. Wenn Sie keinen guten Grund haben, eine Anwendung einzusetzen, wird der wertvolle Kauf schlussendlich im Regal verstauben. Dieses Schicksal ereilt allzu viele Anwendungen in den Unternehmen auf dem Globus, weil die Käufer keine klare Vorstellung davon haben, was sie damit eigentlich vorhaben. Mit den vielen Möglichkeiten, die MATLAB bietet, wäre es für die Position als Staubfänger in Ihrem Regal einfach zu schade. In den folgenden Abschnitten sehen Sie, wie Sie die Anwendungsmöglichkeiten in Ihrem Unternehmen prüfen.
Strukturiert arbeiten, um sich besser zu organisieren
Wenn Sie ein Computerprogramm schreiben, tun Sie nichts anderes, als Ihrem Computer zu sagen, wie er Schritt für Schritt eine Aufgabe abarbeiten soll. Je besser Ihre Computersprache Anweisungen an Ihren Computer formulieren kann, umso einfacher können Sie den Computer nutzen und desto weniger Zeit werden Sie benötigen, eine bestimmte Aufgabe auszuführen.
Angefangen bei den Computersprachen C und Pascal haben die Entwickler sogenannte strukturierte Umgebungen eingeführt. In solch einer Umgebung sieht eine Folge von Anweisungen und Verzweigungen nicht mehr aus wie eine Schüssel mit Spaghetti – schwer nachzuvollziehen und zu entwirren –, sondern mehr wie ein Baum mit einem Stamm und Ästen. Das macht das Nachvollziehen viel einfacher. MATLAB legt großen Wert auf Struktur (beispielsweise, wie Sie Daten organisieren oder Code schreiben). Das bedeutet: Sie verbringen deutlich mehr Zeit mit erfreulichen Dingen und weniger damit, Code zu schreiben. Das liegt daran, dass die Struktur Ihnen besser ermöglicht, Ihre Daten konsistent zu verarbeiten.
Die Komplexität von objektorientierter Programmierung (OOP) vermeiden
Sicher haben Sie von objektorientierter Programmierung (OOP) gehört. Dabei handelt es sich um einen Programmierstil, der Entwicklern hilft, Ihre Programme angelehnt an Objekte der realen Welt zu entwerfen. Jedes Element einer Anwendung wird als Objekt angesehen, welches spezielle Eigenschaften hat und spezielle Arbeiten ausführen kann. Diese Technologie ist ziemlich nützlich für Anwendungsentwickler, weil sie ermöglicht, die Entwicklungszeit und Fehleranfälligkeit für extrem komplexe Anwendungen zu reduzieren.
Auf der anderen Seite ist Objektorientierung sicher nichts, was Sie benötigen, um mathematische Probleme zu bearbeiten. Obwohl Sie auch mit objektorientierten Sprachen schwierige mathematische Probleme lösen können, werden Sie die meisten MINT-Probleme in MATLAB sehr gut auch ohne Objektorientierung lösen können. Da durch den Wegfall des objektorientierten Ansatzes eine ganze Reihe Programmier-Regeln wegfallen, sind Sie mit MATLAB viel schneller produktiv als mit herkömmlichen modernen Programmiersprachen, ohne dass Sie auf mathematische Exzellenz verzichten müssen.
Objektorientierung hat einen sehr sinnvollen Zweck – der ist jedoch für mathematische Probleme nicht relevant. Überlassen Sie das Feld der Objektorientierung lieber den Entwicklern, die riesige Datenbanksysteme oder ganze Betriebssysteme entwerfen. MATLAB hat die Aufgabe, die Dinge für Sie einfacher zu machen.
Den mächtigen Werkzeugkasten nutzen
MATLAB hält eine große Werkzeugkiste für die speziellen Anforderungen von MINT-Anwendern bereit. Im Gegensatz zu einer Allzweck-Programmiersprache ist diese Werkzeugkiste für die Anforderungen der MINT-Fraktion entwickelt worden. Hier ist ein kleiner Ausschnitt der Anwendungsbereiche, für die der MATLAB-Werkzeugkasten gefüllt wurde:
Algebra
Lineare Algebra – viele Gleichungen mit vielen Unbekannten
Analysis
Differentialgleichungen
Statistik
Kurvenanpassung
Grafik
Berichte
Den Programmieraufwand mit einer Sprache der vierten Generation reduzieren
Programmiersprachen werden häufig einer bestimmten Generation zugeordnet. Beispielsweise arbeitet eine Sprache der ersten Generation Seite an Seite mit der Hardware. Diese Art Sprache wurde von den Programmierern in den Anfängen der Computerzeit entwickelt. Grundsätzlich gibt es an diesen Sprachen nichts auszusetzen, jedoch muss man sich sehr gut mit Computern auskennen und benötigt viel Zeit, um solche Programme zu schreiben. Eine Sprache der ersten Generation ist so schwer zu erlernen und zu verwenden, dass selbst die Entwickler sich entschieden haben, etwas Besseres zu entwickeln – die Sprachen der zweiten Generation! Sprachen der zweiten Generation wie zum Beispiel Makro-Assembler [MASM] sind in gewisser Weise einfacher für Menschen zu lesen, werden vor der Ausführung in ausführbaren Code übersetzt und sind sehr prozessorspezifisch.
Von Generation zu Generation werden die Programmiersprachen immer lesbarer und menschlicher Sprache immer ähnlicher. Sie könnten zum Beispiel schreiben FIND ALL RECORDS WHERE LAST_NAME EQUALS ,SMITH'
(FINDE ALLE DATENSÄTZE, FÜR DIE DER NACHNAME GLEICH »SMITH« IST). Es ist noch nicht wirklich literarisch hochwertig, man kann es jedoch verstehen. Sie sagen dem Computer, was er tun soll, überlassen ihm jedoch, wie er die Aufgabe erledigt. Solche Sprachen sind sehr nützlich, weil sie dem Anwender die Last abnehmen, mit der Hardware zu kommunizieren.
Die anderen MATLAB-Anwender kennenlernen
Eine Anwendung ist nicht wirklich nützlich, wenn Sie keine Aufgaben der realen Welt damit bearbeiten können. Viele Programme sind vielleicht ganz spannend – sie können zum Beispiel etwas Interessantes tun, haben aber keinen praktischen Nutzen. MATLAB ist beliebt bei MINT-Anwendern, deren Hauptziel es ist, in ihrem jeweiligen Bereich produktiv zu sein und nicht das schönste oder eleganteste Computerprogramm zu schreiben. Sie finden MATLAB-Anwender unter folgenden Anwendergruppen:
Wissenschaftler
Ingenieure
Mathematiker
Studenten
Lehrer
Professoren
Statistiker
Steuerungstechniker
Forscher in der Bildbearbeitung
Simulationsanwender
Natürlich wollen die meisten Leute die Meinungen und Tipps von echten Anwendern hören, die das Produkt in ihrem Alltag einsetzen. Eine Liste solcher Beiträge finden Sie unter: http://www.mathworks.com/company/user_stories/product.html
. Klicken Sie einfach auf den MATLAB-Eintrag, um eine Liste von Firmen zu erhalten, die MATLAB in ihrem jeweiligen Umfeld nutzen. Beispielsweise zeigt Ihnen die Liste, dass die Zentren für Krankheitskontrolle (centers for disease control – CDC) MATLAB für die Sequenzierung des Poliovirus verwenden (siehe http://www.mathworks.com/user_stories/Centers-for-Diesase-Control-and-Prevention-Automates-Poliovirus-Sequencing-and-Tracking.html
). Sie werden auch finden, dass die NASA (National Aeronautic and Space Administration) MATLAB verwendet hat, als sie das Modell für die X-43 entwarf, welche Mach 10 erreicht hat (mehr unter http://de.mathworks.com/company/user_stories/nasas-x-43a-scramjet-achieves-record-breaking-mach-10-speed-using-model-based-design.html
). Die Liste von Unternehmen wird immer länger und bestätigt: MATLAB wird von vielen Unternehmen für wirklich relevante Themen eingesetzt. Mehr spannende Informationen zu diesem Thema finden Sie auch in Kapitel 18. Dort können Sie ohne Probleme hin- und anschließend wieder zurückspringen.
Das meiste aus MATLAB herausholen
An diesem Punkt haben Sie vielleicht entschieden, dass Sie ohne eine eigene MATLAB-Installation keinen Tag weiterleben wollen. Wenn das der Fall ist, sollten Sie auf jeden Fall etwas mehr über MATLAB in Erfahrung bringen, um den größten Gegenwert für Ihr Geld zu erhalten. In den folgenden Abschnitten erhalten Sie einen kurzen Überblick über nützliche Fähigkeiten für den Umgang mit MATLAB. Sie brauchen nicht jede Fähigkeit für jede Aufgabe und dennoch sind sie mehr als willkommen, wenn es darum geht, die Lernkurve leichter zu erklimmen und sich schneller mit MATLAB zurechtzufinden.
Grundlegende Fähigkeiten am Computer erwerben
Die meisten komplexen Aufgaben am Computer erfordern, dass Sie über grundlegendes Computerwissen verfügen: Sie können die Maus benutzen, mit Menüs arbeiten, verstehen, was eine Dialogbox ist, und können einfache Konfigurationsänderungen durchführen. MATLAB ist insofern den anderen Anwendungen auf Ihrem Computer sehr ähnlich. Es hat eine intuitive und konventionelle grafische Benutzeroberfläche (Graphical User Interface – GUI), welche MATLAB viel angenehmer macht als Block und Bleistift. Wenn Sie mit grafischen Betriebssystemen wie Windows oder Mac OS X zurechtkommen und mit Anwendungen wie Word oder Excel arbeiten können, sind Sie auch hier richtig.
Die mathematischen Anforderungen festlegen
Sie brauchen ein adäquates mathematisches Niveau, um MATLAB sinnvoll verwenden zu können. So wie SQL nahezu unmöglich ohne Wissen über Datenbanken eingesetzt werden kann, wird der Einsatz von MATLAB ohne entsprechende Kenntnisse in Mathematik schwierig. Die Vorteile von MATLAB erschließen sich deutlich besser für Anwender mit Kenntnissen in Trigonometrie, Exponentialfunktionen, Logarithmen und höherer Mathematik.