MATLAB - Grundlagen und Anwendungen (Teil I) Mentoring WiSe 2018/19. Maren Fanke, Alexandra Wesolek, Alexander Korzec Freie Universität Berlin

Ähnliche Dokumente
Crashkurs: MATLAB (Teil I) Mentoring SoSe Maren Fanke, Alexander Korzec Freie Universität Berlin

Mathematische Computer-Software

Programmiervorkurs für die Numerik Teil 2/4

MATLAB Sommersemester 2018 Dr. Ulf Mäder

Algorithmen und ihre Programmierung

Projekt 3 Variablen und Operatoren

Matrizen. a12 a1. a11. a1n a 21. a 2 j. a 22. a 2n. A = (a i j ) (m, n) = i te Zeile. a i 1. a i 2. a i n. a i j. a m1 a m 2 a m j a m n] j te Spalte

Crashkurs: MATLAB Mentoring WS 2016/17 (Orientierungswoche) Sean Omar Klein, Anja Wolffgramm, Maren Fanke, Nicolas Lehmann Freie Universität Berlin

Variablen in MATLAB. Unterschiede zur Mathematik: Symbolisches und numerisches Rechnen. Skriptdateien. for-schleifen.

Numerik-Programm, mittlerweile mit vielen Erweiterungen (Toolboxen) Matlab = Matrix Laboratory Sehr gute Doku (doc, help, lookfor)

Informatik für Schüler, Foliensatz 2 Ausdrücke, Variablen, Datentypen, Ein- und Ausgabe

Ein kleiner Matlab Primer Frank Schimmel

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

Kurze Einführung in Octave

WiMa-Praktikum 1. Woche 8

Kapitel 3: Variablen

Schülerworkshop Computertomographie Mathematik als Schlüsseltechnologie

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 12/13. Kapitel 3. Grunddatentypen, Ausdrücke und Variable

PROCESSING EINE ZUSAMMENFASSUNG. Created by Michael Kirsch & Beat Rossmy

Crashkurs: MATLAB Mentoring SoSe 2017 (Orientierungswoche) Anja Wolffgramm, Maren Fanke Freie Universität Berlin

Matlab: eine kleine Einführung

Eingeben, Ausgeben, Übergeben, Zurückgeben

Matlab: eine kleine Einführung 4

Matlab: eine kleine Einführung 2

INTELLIGENTE DATENANALYSE IN MATLAB. Einführung in MATLAB

This image cannot currently be displayed. Java à Matlab. bereitgestellt von Dr. Lukas Faessler 12/4/17

3 Kurzeinführung in Matlab

Grundlagen von MATLAB

Einführung in Matlab Was ist MATLAB? Hilfe Variablen

Matrizen. Jörn Loviscach. Versionsstand: 14. April 2009, 00:25

10:Exkurs MATLAB / Octave

Matrizen. Jörn Loviscach. Versionsstand: 12. April 2010, 19:00 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung.

Einführung in Matlab

Matrizen. Jörn Loviscach

Mathematik am Computer 4. Vorlesung Matlab: Teil 1

Modellierung und Programmierung 1

Vorkurs Informatik WiSe 16/17

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

Programmieren 1 C Überblick

MLAN1 1 MATRIZEN 1 0 = A T =

Mathematik am Computer 6. Vorlesung: Matlab, Teil I

Tag 2 Repetitorium Informatik (Java)

Programmiervorkurs für die Numerik Teil 1/4

Informatik Vorkurs - Vorlesung 2

Einführung in. Pierre Bayerl

MATLAB Mini-Tutorials

JAVA-Datentypen und deren Wertebereich

2. Einführung in das Ingenieurtool MATLAB

Kapitel 3. Grunddatentypen, Ausdrücke und Variable

Einführung Java Programmieren in Java Arrays Schleifen Fehler. Einführung in Java. Arne Hüffmeier. Michelle Liebers, Dennis Hoffmann

3 Matrizenrechnung. 3. November

Informatik Erste Schritte mit MATLAB

Informatik I. Übung 2 : Programmieren in Eclipse. 5. März Daniel Hentzen

Lektion 3. 1 Theorie. NTS1-P Natur, Technik und Systeme 1 Praktikum Herbstsemester 2012

1 Definition. 2 Besondere Typen. 2.1 Vektoren und transponieren A = 2.2 Quadratische Matrix. 2.3 Diagonalmatrix. 2.

Informatik I - Einstiegskurs

Vorsemesterkurs Informatik Sommersemester Aufgabenblatt Nr. 1B

1 Konsole öffnen. 2 matlab & und return eingeben. 3 Konsole dauerhaft geöffnet lassen. 1 Menüpunkt File - Exit MATLAB oder. 2 quit (und return) oder

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2

Softwarepraktikum. zu Elemente der Mathematik. Carsten Rezny Institut für angewandte Mathematik Universität Bonn

Vektoren und Matrizen

Softwarepraktikum. zu Elemente der Mathematik. Carsten Rezny Institut für angewandte Mathematik Universität Bonn

Zugriff auf Matrizen. Anhängen von Elementen. Punktweise Operatoren. Vektoren und Matrizen in MATLAB II

Vorbereitungskurs Mathematik zum Sommersemester 2011 Tag 7

In den USA verwendet man statt dessen eckige Klammern, was sich in der Software niederschlägt (mit Ausnahmen wie Wolfram Alpha):

R-Wörterbuch Ein Anfang... ein Klick auf einen Begriff führt, sofern vorhanden, zu dessen Erklärung.

FH Gießen-Friedberg, FB 06 (MNI) Skript 8 Mathematik 1 für KMUB 5./7. November 2008 Prof. Dr. H.-R. Metz. Matrizen 1. a m1 a m2 a m3 a mn

In den USA verwendet man statt dessen eckige Klammern, was sich in der Software niederschlägt (mit Ausnahmen wie Wolfram Alpha):

3.1 Allgemeines. Abbildung 3.1: Eröffnungsmenü einer Excel-Mappe

Grundsätzliches Rechnen mit Matrizen Anwendungen. Matrizenrechnung. Fakultät Grundlagen. Juli 2015

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

Intensivübung zu Algorithmen und Datenstrukturen

Informatik. Wiederholung Felder (Arrays), string. Vorlesung

Python Einführung. Monica Selva Soto. 24 März Mathematisches Institut

C-Programmierung: Ausdrücke und Operatoren#Division.2F

a ij i - te Gleichung (Zeile), i = 1,2,3,..., m

Vorkurs Informatik WiSe 17/18

Einführung in MATLAB

1. Einstieg in MATLAB

Ausdrücke (1) Grundlegende Eigenschaften

Übungszettel 2a - Python

Variablen, Konstanten und Datentypen

Informatik I - Übung 2 Programmieren in Eclipse

Vorlesung Unix-Praktikum

Basiswissen Matrizen

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Einstieg in die Informatik mit Java

Algorithmen & Programmierung. Ausdrücke & Operatoren (1)

oder A = (a ij ), A =

Die Sprache C# Datentypen, Speicherverwaltung Grundelemente der Sprache. Dr. Beatrice Amrhein

Musterlösungen Blatt Mathematischer Vorkurs. Sommersemester Dr. O. Zobay. Matrizen

IV. Matrizenrechnung. Gliederung. I. Motivation. Lesen mathematischer Symbole. III. Wissenschaftliche Argumentation. i. Rechenoperationen mit Matrizen

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.

Stichworte zu Octave

Transkript:

MATLAB - Grundlagen und Anwendungen (Teil I) Mentoring WiSe 2018/19 Maren Fanke, Alexandra Wesolek, Alexander Korzec Freie Universität Berlin 17/10/2018

Outline MATLAB: Übersicht Was ist MATLAB? MATLAB starten und beenden Ein erstes Programm Tipps & Hinweise Grundlegende Sprachelemente Variablen & Zuweisungen Indizierung Arithmetische, logische und relationelle Operationen Allgemeine Hinweise Allgemeine Hinweise Quellen Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 2

Inhalt MATLAB: Übersicht Was ist MATLAB? MATLAB starten und beenden Ein erstes Programm Tipps & Hinweise Grundlegende Sprachelemente Variablen & Zuweisungen Indizierung Arithmetische, logische und relationelle Operationen Allgemeine Hinweise Allgemeine Hinweise Quellen Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 3

Was ist MATLAB? Was ist MATLAB? Abkürzung für MAtrix LABoratory. Numerikprogramm für das Rechnen mit großen Datenfeldern (Arrays) im Sinne von Matrizen und Vektoren. U.a. auch Werkzeug zur Erstellung von graphischen Darstellungen und Oberflächen. Warum MATLAB? Einfache Syntax basierend auf dem Matrix-Datentyp. Breites Spektrum mathematischer Funktionen und Algorithmen aus diversen Anwendungsbereichen. Plattformübergreifende Programmiersprache. Einfach zu bedienende Visualisierungsmöglichkeiten. Alternativen Octave Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 4

Inhalt MATLAB: Übersicht Was ist MATLAB? MATLAB starten und beenden Ein erstes Programm Tipps & Hinweise Grundlegende Sprachelemente Variablen & Zuweisungen Indizierung Arithmetische, logische und relationelle Operationen Allgemeine Hinweise Allgemeine Hinweise Quellen Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 5

MATLAB starten und beenden MATLAB am Fachbereich starten Linux-Rechner Aufsuchen eines Computerraums in der Arnimallee 6 oder im Keller der Informatik, Takustr. 9 An freien Computer mit Fachbereichsaccount anmelden. Wichtig! Um sich an den Computern des Fachbereichs anzumelden, benötigt man einen Fachbereichsaccount. Dieser ist nicht gleichzusetzen mit einem Studierenden- bzw. ZEDAT-Account. Weitere Informationen zum Fachbereichsaccount siehe: http://www.mi.fu-berlin.de/w/it/computeraccess Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 6

MATLAB starten und beenden Nach erfolgreichem Einloggen am Computer mit Tastenkombination Alt + F2 Suchfenster auf dem Desktop öffnen und den Begriff konsole eingeben Anschließend in die geöffnete Konsole matlab eingeben und Enter drücken Bemerkung Auf Windows-Rechnern kann MATLAB durch das Anklicken des entsprechenden Eintrags im Startmenü geöffnet werden. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 7

MATLAB starten und beenden MATLAB am Fachbereich beenden Nach Beendigung des Programmierens oder beim Einlegen einer längeren Pause, sollte MATLAB beendet werden. Dies geschieht durch Eingabe des Befehls exit bzw. quit in das Command Window von MATLAB und gilt sowohl für Linux- als auch Windows-Rechner. Ist MATLAB nach obigen Angaben beendet, kann sich von dem Computer abgemeldet werden. Hierzu auf den Pfeil oben rechts drücken, dann auf den Benutzernamen und schließlich auf Abmelden (bzw. Log out) klicken. Der Rechner wird nicht heruntergefahren! Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 8

Inhalt MATLAB: Übersicht Was ist MATLAB? MATLAB starten und beenden Ein erstes Programm Tipps & Hinweise Grundlegende Sprachelemente Variablen & Zuweisungen Indizierung Arithmetische, logische und relationelle Operationen Allgemeine Hinweise Allgemeine Hinweise Quellen Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 9

Ein erstes Programm 1. Wählen Sie das Command Window aus und testen Sie die Funktionsweise von MATLAB unter Verwendung der Grundrechenarten. Zur Hilfestellung können Sie nacheinander folgende Befehle eingeben und mit Enter bestätigen: 5 + 0.5 5 0.5 5 0.5 5/0.5 2. Wählen Sie nun den Datei-Explorer (Current Folder) aus und legen Sie einen neuen Ordner (bspw. matlabgrundlagen) an, indem Sie auf den Pfeil oben rechts klicken. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 10

Ein erstes Programm 3. Machen Sie den neu angelegten Ordner durch Doppelklick zum Arbeitsverzeichnis. 4. Erstellen Sie nun eine Skript-Datei, indem Sie an einer leeren Stelle im Datei-Explorer (Current Folder) einen Rechtsklick ausführen und anschließend die entsprechende Dialogoption auswählen. Benennen Sie die Datei: meinerstesprogramm.m Die Datei wird im aktiven Verzeichnis angelegt, und befindet sich somit direkt am richtigen Ort. 5. Doppelklick auf die neu erstellte Datei, um diese zu öffnen. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 11

Ein erstes Programm 6. Geben Sie nun einige Befehle unter Benutzung der Grundrechenarten in die Datei ein und speichern Sie diese in der Datei ab. 7. Führen Sie die Datei meinerstesprogramm.m aus. Hierzu gibt es mehrere Möglichkeiten: Eingabe des Dateinamens ohne Dateiendung im Command Window (hier: meinerstesprogramm) Klick auf den Run-Knopf in der Menüleiste Drücken von F5 Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 12

Inhalt MATLAB: Übersicht Was ist MATLAB? MATLAB starten und beenden Ein erstes Programm Tipps & Hinweise Grundlegende Sprachelemente Variablen & Zuweisungen Indizierung Arithmetische, logische und relationelle Operationen Allgemeine Hinweise Allgemeine Hinweise Quellen Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 13

Tipps & Hinweise In MATLAB erstellte Dateien werden immer mit der Endung.m abgespeichert. Ansonsten lässt sich das Programm durch MATLAB nicht aufrufen. Gleiches gilt auch für Programme, die unter Octave abgespeichert werden! Mit dem Simikolon (;) wird in MATLAB die Ausgabe von Variablen, etc. unterdrückt. Dies ist v.a. bei längeren Rechnungen nützlich. Mit % werden in MATLAB Kommentare eingeleitet. Zeilen, die ein % beinhalten, werden von MATLAB ignoriert. % Die Ergebnisse der folgenden Rechnung werden im Command Window ausgegeben. 5 + 0.5 % Durch Einfügen eines Semikolons wird das Rechenergebnis der folgenden % Rechnung nicht im Command Window ausgegeben. 5 0.5; Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 14

Inhalt MATLAB: Übersicht Was ist MATLAB? MATLAB starten und beenden Ein erstes Programm Tipps & Hinweise Grundlegende Sprachelemente Variablen & Zuweisungen Indizierung Arithmetische, logische und relationelle Operationen Allgemeine Hinweise Allgemeine Hinweise Quellen Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 15

Variablen & Zuweisungen Variablen Es gibt Variablen. Variablen können a, b,..., z aber auch fritz oder hanna heißen. Mathematik Variablen können eine konkrete Belegung zur Erfüllung einer Gleichung haben. Ist bspw. dann erfüllt x = 5 die Gleichung. x + 5 = 10, Informatik Wir können Zahlen auch anders nennen durch eine Zuweisung: x 5 "Die Zahl 5 heißt jetzt x." Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 16

Variablen & Zuweisungen Variablen in MATLAB Variablen werden in MATLAB durch Zuweisungen definiert. Ein Wert wird einer Variablen mittels = zugewiesen. Das Gleichheitszeichen wird deshalb auch als Zuweisungsoperator bezeichnet. Beispiel a = 3 Variablennamen beginnen mit einem Buchstaben gefolgt von einer beliebigen Anzahl von Buchstaben, Ziffern oder Unterstrichen. Beispiel fritz = 5 Bemerkung Zuweisungen unterscheiden sich von Gleichheitsabfragen. MATLAB unterscheidet zwischen Groß- und Kleinschreibung! Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 17

Variablen & Zuweisungen Datentypen Es gibt verschiedene Datentypen, die einer Variablen zugewiesen werden können: Integer ganzzahlige Werte, z.b. 42 Double Gleitkommazahlen, z.b. 3.141529 String Zeichenketten, z.b. "hallo" Boolean Wahrheitswerte hier repräsentiert durch 0 (false) und 1 (true) Arrays Datenfeld, in MATLAB meist als Matrix repräsentiert. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 18

Variablen & Zuweisungen Arrays (Matrizen) Mathematik Eine Matrix besteht aus einer rechteckigen oder quadratischen Anordnung von Einträgen (bspw. Zahlen): S 1 S 2... S n Z 1 a 11 a 12... a 1n. Z 2 a 21 a.. 22 a2n......... Z n a n1 a n2... a nn Beispiel: 1 2 5 A = 15 3 6 Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 19

Variablen & Zuweisungen Die Einträge einer Matrix können reell oder komplex sein: Reellwertige Matrix: R n m, n, m N. Komplexe Matrix: C n m, n, m N. Mit den Einträgen einer Matrix lässt sich in bestimmter Weise rechnen (bspw. Matrixmultiplikation) Skalare und Vektoren sind Spezialformen einer Matrix. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 20

Variablen & Zuweisungen MATLAB Einer der wichtigsten Daten-Typen in MATLAB sind Matrizen. Sie stellen eine besondere Form von Datenfeldern (Arrays) dar. Skalare und Vektoren sind Spezialformen einer Matrix. Skalare werden von MATLAB als (1 1), Zeilenvektoren als (1 n) und Spaltenvektoren entsprechend als (n 1) Matrizen wahrgenommen. Variablen können somit skalare Werte, Zeilen-/Spaltenvektoren oder Matrizen zugeordnet werden. Variablen werden in MATLAB auch oft als Matrix-Variablen bezeichnet. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 21

Variablen & Zuweisungen Beispiel: Initialisierung von Matrix-Variablen a = 3.141 % skalarer Wert, (1x1)-Matrix. v_col = [1.1; 2.2; 3.3] v_row = [1 2 3] % (3x1)-Spaltenvektor. Jedes ; leitet eine neue Zeile ein. % (1x3)-Zeilenvektor. A = [1 2 3; % Zeilenumbruch durch ; optional. 4 5 6; % Alternative Darstellung von Matrix A durch: 7 8 9] % A = [1 2 3; 4 5 6; 7 8 9] % Hierbei ; für Zeilenumbruch notwendig! % Verkettung von Matrizen: b = [a; v_col] % Entspricht [3.141; 1.1; 2.2; 3.3] c = [a v_row] % Entspricht [3.141 1 2 3] D = [v_col A] % Entspricht [1 1 2 3; 2 4 5 6; 3 7 8 9] Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 22

Variablen & Zuweisungen Bemerkung Angabe von Matrizen (Vektoren) durch eckige Klammern. Zeilenweise Angabe der Matrix-Einträge. Trennung der Zeileneinträge durch Leerzeichen (wahlweise Kommata). Zeilenumbruch durch setzen von Semikolon. Matrizen können miteinander verkettet werden, solange die Dimensionen zusammenpassen. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 23

Variablen & Zuweisungen Beispiel: Initialisierung von Matrix-Variablen - Kurzschreibweisen i = 1; k = 2; n = 8; seq_1 = i:n; % Inkrementelle (aufsteigende) Folge. Äquivalent zu % seq_1 = [1 2 3 4 5 6 7 8]; seq_k = i:k:n; % k-inkrementelle Folge. Äquivalent zu % seq_k = [1 3 5 7]; seq_ls = linspace(i,n,k); % Lineare Unterteilung eines Intervalls [a,b] in n % Punkte mit gleichem Abstand. Äquivalent zu % seq_ls = [1 7]; % Berechnung Abstand Punkte (Schrittweite): % tau = (b-a)/(n-1) N = zeros(k); % (k x k)-nullmatrix. Äquivalent zu N = [0 0; 0 0]; E = eye(k); O = ones(i,k); % (k x k)-einheitsmatrix. Äquivalent zu % E = [1 0; 0 1]; % (i x k)-matrix in Form eines Zeilenvektors. % Äquivalent zu O = [1 1]; Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 24

Variablen & Zuweisungen Bemerkung ones(m, n), zeros(m, n) und eye(m, n) sind in MATLAB bereits integrierte Matrixfunktionen zur Erstellung von m n - Matrizen. Spalten- bzw. Zeilenvektoren werden dabei wie folgt dargestellt ones(m, 1) bzw. ones(1, n). Dies gilt analog für die anderen Matrixfunktionen. Mit ones(n), zeros(n) und eye(n) können n n - Matrizen einfach dargestellt werden. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 25

Inhalt MATLAB: Übersicht Was ist MATLAB? MATLAB starten und beenden Ein erstes Programm Tipps & Hinweise Grundlegende Sprachelemente Variablen & Zuweisungen Indizierung Arithmetische, logische und relationelle Operationen Allgemeine Hinweise Allgemeine Hinweise Quellen Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 26

Indizierung Indizierung Mathematik Eine Matrix hat mehrere Einträge. Um den Ort der Einträge in der Matrix zu kennzeichnen, werden diese (meist) mit den Indizes i und j gekennzeichnet. i bezeichnet dabei die Zeile, j die zugehörige Spalte des Eintrags. Mit a ij wird dann die Position eines bestimmten Eintrags der Matrix A angegeben. Beispiel: 1 2 A = 15 3 a 12 = 2 Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 27

Indizierung Indizierung MATLAB Wissen bereits, dass in MATLAB Matrizen (Arrays) ebenfalls mehrere Einträge haben. Einzelne Einträge sind hier auch durch Angabe der Zeilen- und Spaltenposition gekennzeichnet. Zeilen und Spalten werden ebenfalls beginnend mit dem Wert 1 gezählt. Einträge können somit gezielt, aufgerufen, ausgelesen oder ggf. verändert werden. Es können nicht nur einzelne skalare Werte, sondern sogar komplette Untermatrizen angesprochen und ausgewertet werden. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 28

Indizierung Beispiel: i = 1; j = 3; I =[1 2]; b = [1 2 15 3]; A = [1 5 3; 2 6 9]; display(b(j)); % display() ist eine weitere integrierte Funktion in MATLAB % zur Ausgabe auf dem Command Window. Da es sich um einen % Vektor handelt, wird nur ein Wert zur Angabe des gesuchten % Eintrags benötigt. display(a(i,j)); % Für Matrizen wird die Angabe der Zeile und der Spalte für den % entsprechenden Eintrag benötigt. display(a(i,:)); % Ermöglicht Zugriff bzw. Ausgabe der kompletten Zeile. display(a(:,j)); % Ermöglicht Zugriff bzw. Ausgabe der kompletten Spalte. display(a(:,i)); % Ermöglicht Zugriff bzw. Ausgabe mehrerer Spalten. % (Kann auch auf Zeilen angewandt werden.) Achtung: Bei Indizierung immer auf Matrixdimension achten! Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 29

Inhalt MATLAB: Übersicht Was ist MATLAB? MATLAB starten und beenden Ein erstes Programm Tipps & Hinweise Grundlegende Sprachelemente Variablen & Zuweisungen Indizierung Arithmetische, logische und relationelle Operationen Allgemeine Hinweise Allgemeine Hinweise Quellen Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 30

Arithmetische, logische und relationelle Operationen Arithmetische Operationen Mathematik Addition: a + 3 Subtraktion: 5 b Multiplikation: 3 2 Division Ganzzahlige Division: 6/3 Gleitkommazahlen Division: 6/2.5 Modulo: 6 mod 2 Potenzierung: 2 2 Bemerkung Potenzieren vor Punktrechnung vor Strichrechnung. Änderung der Auswertungsreihenfolge durch Klammerung. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 31

Arithmetische, logische und relationelle Operationen Arithmetische Operationen MATLAB Skalare, Vektoren, Matrizen Nur für Vektoren & Matrizen Addition + k. SZ. Subtraktion k. SZ. Multiplikation. Division /./ Potenzierung ˆ.ˆ * k. SZ. = kein Sonderzeichen. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 32

Arithmetische, logische und relationelle Operationen Bemerkung In MATLAB gilt: Potenzieren vor Punktrechnung vor Strichrechnung. Änderung der Auswertungsreihenfolge durch Klammerung. Modulo wird durch die bereits integrierte Funktion mod(a, b) berechnet. Bei Benutzung der arithmetischen Operatoren +,,,ˆ, / für Skalare, Vektoren und Matrizen (auch in Kombination) gelten die zugehörigen mathematischen Rechenregeln (bspw. Matrixmultiplikation)..,.ˆ,./ sind elementweise arithmetische Operatoren. Diese gelten nur für Vektoren & Matrizen! Hierbei werden die einzelnen Einträge miteinander berechnet (Achtung! Rechnung ist anders als bspw. Matrixmultiplikation). Wichtig! Die Dimensionen von Matrizen & Vektoren müssen untereinander immer zueinander kompatibel sein! Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 33

Arithmetische, logische und relationelle Operationen Logische (Boolesche) Operationen Mathematik Aussagen A, B können mit Hilfe Boolescher Operatoren verknüpft werden. Der Wahrheitswert kann durch eine Wahrheitstafel abgelesen werden. Die Wahrheitstafel für diese Operatoren sieht dabei wie folgt aus: A B A B A B A 0 0 0 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 0 Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 34

Arithmetische, logische und relationelle Operationen Logische (Boolesche) Operationen MATLAB MATLAB enthält Boolesche Operatoren in Form von UND (&), ODER ( ), NICHT ( ). Die Wahrheitstafel für diese Operatoren sieht dabei wie folgt aus: und oder nicht A B A&B A B A 0 0 0 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 0 Die 1 steht wiederum für true, die 0 für false. Das logische UND bindet enger als das logische ODER, trotzdem sollten Klammern gesetzt werden, um falsch formulierte Bedingungen zu verhindern. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 35

Arithmetische, logische und relationelle Operationen Relationelle Operationen Mathematik In der Aussagenlogik kann man mit Relationsoperatoren den Wahrheitsgehalt einer Aussage A bestimmen. Aussagen können sein: 3 > 2 5 = 7 x = y 5 5 Mathematischer Syntax x > y x < y x y x y x = y x = y Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 36

Arithmetische, logische und relationelle Operationen Relationelle Operationen MATLAB Für die Abfrage auf Gleichheit werden Relationsoperatoren verwendet. Diese sind wie folgt definiert: MATLAB - Syntax x > y x < y x >= y x <= y x == y x = y mathematische Syntax x > y x < y x y x y x = y x = y Bemerkung MATLAB antwortet mit den Booleschen Operatoren, d.h. mit 1 (true), falls eine Relation stimmt und mit 0 (false), falls nicht. Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 37

Arithmetische, logische und relationelle Operationen Beispiel: b = 5; v = [3 6 8]; w = [2; 7; 9]; A = [1 5 3; 2 6 9]; C = [2 6; 8 1; 7 2]; % Arithmetische Operationen display(a+b); display(c A); display(v. w); display(b.^2); % Addition Matrix und Skalar % Matrizenmultiplikation % Elementeweise Multiplikation Zeilen- und Spaltenvektor % Elementeweises Potenzieren % Logische Operationen display(~1 0); display(~(0 & 1)); display((1 & 1) (0 & 0)); Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 38

Arithmetische, logische und relationelle Operationen Beispiel: a = 2; b = 5; A = [1 5 3; 2 6 9]; B = [6 4 5; 2 3 4]; % Relationelle Operationen display(a == b); display(a < B); display(a == B); % Relationeller Operator auf Skalare (bekannt). % Relationelle Operatoren auf Matrizen % (auch für Vektoren möglich). % Hierbei ebenfalls auf Matrixdimensionen achten! display(b >= A); display((a<b) (A==B)); Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 39

Inhalt MATLAB: Übersicht Was ist MATLAB? MATLAB starten und beenden Ein erstes Programm Tipps & Hinweise Grundlegende Sprachelemente Variablen & Zuweisungen Indizierung Arithmetische, logische und relationelle Operationen Allgemeine Hinweise Allgemeine Hinweise Quellen Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 40

Allgemeine Hinweise Neben MATLAB, kann auch das kostenfreie Octave zum Erstellen von MATLAB-Programmen bzw. -Dateien verwendet werden: https://www.gnu.org/software/octave/#install Achtung: In Octave gibt es einige integrierte Funktionen, die es in MATLAB nicht gibt (bspw. idivide in Octave heißt in MATLAB floor). Daher sollten in Octave angefertigte Programme noch einmal unter MATLAB vor etwaiger Abgabe getestet werden! Zum Nachschlagen einiger Befehle und bereits in MATLAB vorhandener Funktionen empfiehlt sich die Online-Dokumentation von MATLAB unter: https://mathworks.com/help/matlab/index.html Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 41

Quellen (alle Links zuletzt am 16.10.2018 um 0:00 Uhr abgerufen) Referenzen Menzel, Christoph: Einführung in Matlab. Zuletzt bearbeitet: Jianis Baumgardt (Juni 2013), Projektgruppe Praktische Mathematik (TU Berlin) https://www.cs.uni-potsdam.de/ml/teaching/ws14/ida/einfuehrung_in_matlab.pdf http: //numerik.mi.fu-berlin.de/wiki/ws_2017/comai_dokumente/matlab_minitutorials.pdf https://de.wikipedia.org/wiki/matrix_(mathematik)#begriffe_und_erste_eigenschaften https://www.uni-ulm.de/fileadmin/website_uni_ulm/mawi.inst.070/ws12_13/numerik1/ Uebung1.pdf https://www.uni-ulm.de/fileadmin/website_uni_ulm/mawi.inst.070/ws12_13/numerik1/ Uebung1.pdf http://num.math.uni-goettingen.de/plonka/numeriksig1/matlab.pdf http://www.math.uni-rostock.de/~peters/matlab/matlab_kurz.pdf http://wwwmath.uni-muenster.de/num/vorlesungen/matlab-kurs_ws08/script/ matlab-einfuehrung.pdf Freie Universität Berlin, MATLAB - Grundlagen und Anwendungen (Teil I) 42