23
Sommeruniversität 2005 Dr. Margarita Esponda 1 MATLAB Mathematik mit Rechnerunterstützung Dr. Margarita Esponda-Argüero Fachbereich Mathematik und Informatik Freie Universität Berlin Sommeruniversität 2005 Inhalt Einfache Befehle und Ausdrücke Arbeiten mit Feldern und Matrizen Steueranweisungen 2-D und 3-D-Grafik MATLAB - Programme und Funktionen

MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Embed Size (px)

Citation preview

Page 1: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 1

MATLABMathematik mit Rechnerunterstützung

Dr. Margarita Esponda-Argüero

Fachbereich Mathematik und Informatik

Freie Universität Berlin

Sommeruniversität 2005

Inhalt

Einfache Befehle und Ausdrücke

Arbeiten mit Feldern und Matrizen

Steueranweisungen

2-D und 3-D-Grafik

MATLAB - Programme und Funktionen

Page 2: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 2

MATLAB

MATLAB ist ein Softwarepaket besonderes gut für:

numerische Berechnungen

Visualisierung von Daten

Simulation dynamische Systeme

in den 70er Jahren an der University of New Mexico und

der Stanford University entwickelt

für umfangreiche Probleme kann MATLAB als

Programmiersprache eingesetzt werden.

MATLAB

MATLAB kann auf zwei Arten verwendet werden

– Interaktiv mit direkte Eingabe von Anweisungen und

sofortige Ausführung durch den Interpreter

– als Programmiersprache oder indirekte Eingabe. Die

Anweisungen werden zuerst in einer Datei (M-File)

gespeichert und können dann ausgeführt werden.

Page 3: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 3

BefehlsfensterBei der interaktiven Verwendung werden Befehle direkt in ein MATLAB-Befehlsfenster eingegeben und sofort ausgeführt.

>> 48/3

ans =16

>> ans*ans

ans =256

>> ans^2

ans =65536

>> a = 10

a =10

>> b = 20

b =20

>> a/b

ans =0.5000

>> c = 7;

>>

Das Semikolon

verhindert,

dass der Wert

von c wieder

ausgegeben

wird.

MATLABDer Grundbaustein ist der Datentyp Matrix

Matrix Laboratory

Variablen in Programmiersprachen sind Stellen im Speicher, in denen Werte abgelegt werden können.

Die einzelne Elemente der Matrix können

einfache Zahlen oder komplexe Elemente sein.

Vektoren Variablen sind Matrizen mit nur

einer Zeile (1xn-Matrizen).

Einfache Variablen sind 1x1-Matrizen.

In MATLAB werden alle Variablen als MxN-Matrizen gespeichert.

Wo M die Anzahl der Zeile und N die Anzahl der Spalten ist.

4x5

1x5

1x1

Page 4: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 4

Arbeitsumgebung

Befehlseingabe

Befehlsgeschichte

Arbeitsspeicher

Eingabe von Daten

>> a = 2

a =

2

>> x = [1; 2; 3]

x =

1

2

3

>> A = [1,2,3;4,5,6;7,8,9]

A =

1 2 3

4 5 6

7 8 9

Variablen

Vektoren

Matrizen

Page 5: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 5

Arithmetische Operationen

= Zuweisung

+ Addition

- Subtraktion

* Multiplikation (Matrizen)

/ Division (Matrizen)

^ Potenzierung (Matrizen)

Arithmetische Operationen

.* Multiplikation (elementweise)

./ Division (elementweise)

\ dividiert Matrizen nach links

.\ dividiert nach links (elementweise)

.^ Potenzierung (elementweise)

' adjungiert Matrix

.' transponiert Matrix

Page 6: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 6

Vektor- und Matrizen-Operationen

>> v = [1 2 3 4 5]

v =1 2 3 4 5

>> 2 * v

ans =2 4 6 8 10

>> v .* v

ans =1 4 9 16 25

>> A = [1 2; 3 4]

A =1 2 3 4

>> A + A

ans =2 4 6 8

>> 3 + A

ans =4 5 6 7

>> v * v.'ans =

55

Vektor- und Matrizen-Operationen

>> A = [1,2; 3,4]

A =1 2 3 4

>> A + A

ans =2 4 6 8

>> 2 * A

ans =2 4 6 8

>> B = [2,2; 3,3]

B =2 2 3 3

>> A * B

ans =8 8 18 18

>> A .* B

ans =2 4 9 12

Page 7: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 7

Eingabe von Matrizen und Vektoren

>> A = [1 2; 3 4]

A =1 2 3 4

>> v = [1:7]

v =1 2 3 4 5 6 7

Die einfachste Methode Matrizen oder Vektoren zu erzeugen ist, die direkte Eingabe innerhalb eckiger Klammern in dem Eingabefenster. Elemente werden durch Komma oder Leerzeichen getrennt, Spalten durch Semikolon oder durch Zeilenumbruch.

Ein einzelnes Element einer Matrix wird dann mit Zeile und Spaltennummer gekennzeichnet.

>> x = A (2, 2)

x =4

Der " : "-Operator kann als "von ...bis" übersetzt werden. Damit können Sie Vektoren oder Matrizen erzeugen:

>> m = [1:7;8:14]

v =1 2 3 4 5 6 78 9 10 11 12 13 14

Allgemeine Funktionen

whos listet alle Variablen, die im Speicher sind

clear löscht alle Variablen und Funktionen aus dem Speicher

cd wechselt die aktuelle Arbeitverzeichnis

dir listet alle Dateien des aktuellen Arbeitsverzeichnisses

help listet alle Hilfethemen

help Thema liefert Hilfe zu bestimmtem Thema

lookfor Wort sucht in der Dokumentation alle Stellen, in denen

Wort vorkommt

doc Thema liefert Hilfe zu bestimmtem Thema (neues Fenster)

clock gibt aktuelles Datum und Zeit in einem Vektor

zurück

Page 8: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 8

Elementare mathematische Funktionen

Trigonometrische Funktionen

sin(x) Sinus

cos(x) Kosinus

tan(x) Tangens

asin(x) Arcus-Sinus

acos(x) Arcus-Kosinus

atan(x) Arcus-Tangens

sqrt(x) Quadrat Wurzel von x

abs(x) Absoluter Wert von x

log(x) Natürlicher Logarithmus

log10(x) Logarithmus mit Basis 10

exp(x) Exponentialfunktion

Einfache Funktionen

mod(x,y) x Modulo y

rem(x,y) Rest der Division x/y

round(x) rundet

flour(x) rundet ab

ceil(x) rundet auf

fix(x) ganzzahliger Anteil

Funktionen

>> help roundROUND Round towards nearest integer.

ROUND(X) rounds the elements of X to the nearest integers.

See also FLOOR, CEIL, FIX.

>> round( 5.7)ans =

6

>> x = fix( 5.7)x =

5

Page 9: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 9

MATLAB-DataienM-Files

M-Files sind Dateien mit dem Suffix .mIn M-Files können Befehlssequenzen gespeichert und später ausgeführt werden.

File → New → M-File

a = 1;

b = 3;

c = 2;

x1 = (-b + sqrt( b^2 - 4*a*c ))/(2*a)

x2 = (-b - sqrt( b^2 - 4*a*c ))/(2*a)

Debug → Run

>> x1 =

-1

x2 =

-2

>>

File → Save As ... → q_gleichung.m

Eingabe und Ausgabe Funktionen

clc löscht das MATLAB-Kommando-Fenster

disp Ausgabe auf dem Bildschirm

sprintf wandelt Zahlen unter einer Formatangabe

in einen String um

input Eingabe von Zahlen mittels Tastatur

clc;

x = 5;

disp('hello');

disp(x);

y = input( 'y = ' );

a = sprintf('x=%i y=%i', x, y);

disp( a );

>> hello

5

y = 13

x = 5 y = 13

Page 10: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 10

MATLAB-DataienM-Files

File → New → M-File

a = input('a = ');

b = input('b = ');

c = input('c = ');

x1 = (-b + sqrt(b^2-4*a*c))/(2*a)

x2 = (-b - sqrt(b^2-4*a*c))/(2*a)

Debug → Run

x1 =-1.0000 + 1.0000i

x2 =-1.0000 - 1.0000i

>>

a = 122

b =c =

Programmieren in MATLAB

M-Dateien

Skripte

Funktionen

Der Gültigkeitsraum der im Skript

definierten Variablen ist die globale

Arbeitsumgebung oder (Basis-

Workspace)

M-Funktionen definieren eine

eigene Arbeitsumgebung und

besitzen keinen direkten Zugriff

auf den Basis-Workspace

Page 11: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 11

Kommentare

Kommentare in MATLAB beginnen mit % und gehen bis

zum Ende der Zeile .

Kommentare werden in der Hilfsfunktionen verwendet.

Bei help <Verzeichnis> wird die erste Kommentarzeile

angezeigt.

Bei help <Funktion> wird der erste Kommentarblock

angezeigt.

M-Files

x1 =-1.0000 + 1.0000i

a = 122

b =c =

Alle Variablen der Arbeitsumgebung werden gelöscht

Das Eingabefenster wird gelöscht

% Quadratische Gleichung

clear

clc

a = input('a = ');

b = input('b = ');

c = input('c = ');

d = sqrt(b^2-4*a*c);

x1 = ( -b + d )/(2*a)

x2 = (-b – d )/(2*a)

Kommentare in MATLAB fangen mit dem % - Zeichen an

x2 =-1.0000 - 1.0000i

>>

Page 12: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 12

if-else-Anweisung

if Bedingung

Anweisungen

else

Anweisungen

end

Vereinfachte Form

if Bedingung

Anweisungen

end

Beispiel a = input('a = ')

if mod(a,2)==0

disp('gerade Zahl')

else

disp('ungerade Zahl')

end

Vergleichsoperationen

< kleiner als

> größer als

<= kleiner oder gleich

>= größer oder gleich

== gleich

~= ungleich

Normalerweise ist das

Ergebnis eine

Vergleichsoperation

eines Wahrheitswertes.

In MATLAB ist der Wert

eines Vergleichs

entweder 0 (Falsch)

oder 1 (Wahr).

Page 13: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 13

Logische Operationen

~ Negation

& und

| oder

xor exklusiv oder

0 bedeutet falsch

alles andere bedeutet wahr

true = 1

false = 0

>> 2|5

ans = 1

>> -7&5

ans = 1

>> 0&5

ans = 0

>> 2<7 & 7<2

ans = 0

>> ~~7

ans = 1

>> mod(8,3)==1

ans = 0

>> -1|-6

ans = 1

>> true

ans = 1

>> false

ans = 0

>>

Logische Operationen mit Matrizen

Matrixelemente werden paarweise mit Null verglichen

& ergibt 1, wenn beide Elemente ≠0, sonst 0

| ergibt 0, wenn beide Elemente =0, sonst 1

~ 1, wenn das Element gleich 0, sonst 0

Funktionen all und any

all(x) ergibt 1, wenn alle Elemente von x ≠0, sonst 0

any(x) ergibt 0, wenn alle Elemente =0, sonst 1

Page 14: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 14

if-else-Anweisung% Quadratische Gleichung

disp( 'Programm zur Lösung einer quadratischen' )disp( 'Gleichung mit Koefizienten a, b, c ' )a = input( 'a = ' );

if ( a ~= 0 )b = input('b = ');c = input('c = ');d = sqrt( b^2 -4*a*c )x1 = (-b + d )/(2*a)x2 = (-b – d )/(2*a)

elsedisp( 'Wenn a==0, haben wir keine quadratische Gleichung!' )

end;

switch-case-Anweisung

switch Ausdruck

case Konstante_1

Anweisungen

case Konstante_2

Anweisungen

case Konstante_2

Anweisungen

otherwise

Anweisungen

end

Page 15: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 15

switch-Anweisung

zahl = input('bitte eine Zahl eingeben: ');

switch sign(zahl)

case -1

disp('Die Zahl ist negativ')

case 0

disp('Die Zahl ist gleich Null')

otherwise

disp('Die Zahl ist positiv')

end

switch-case-Anweisung

a = round(rand(1,1)*9);

switch a

case 0, b = 'null'

case 1, b = 'eins'

case 2, b = 'zwei'

case 3, b = 'drei'

case 4, b = 'vier'

case 5, b = 'fünf'

case 6, b = 'sechs'

case 7, b = 'sieben'

case 8, b = 'acht'

case 9, b = 'neun'

otherwise, b = 'viele'

end

Page 16: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 16

while-Anweisung

while Ausdruck

Anweisungen

end

Syntax

Beispiele

a = 0

while a<100

disp( a*a )

a = a + 1;

end

clc

a = 0

x = []

while a<100

a = a + 1;

x = [x a*a]

end

disp(x)

while-Anweisung

Beispiel% Glücksspieler

bargeld = input('Bargeld = ');

while bargeld>0

z = round( rand(1)*100000 );

if mod(z,2)==0

bargeld = bargeld + 1;

else

bargeld = bargeld - 1;

end

disp( bargeld )

end

disp('du bist pleite!')

Page 17: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 17

for-Anweisung

for Laufvariable = Bereichsangabe

Anweisungsblock

end

Syntax

for Laufvariable = Begin : Schritt : Ende

Anweisungsblock

end

for-AnweisungBeispiele

for i = 1:2:20disp(i)

end

>> 1 3 5 7 9 11 13 15 17 19

% Eingabe

n = input( 'n = ' );

fak = 1;

% Berechnung

for i = 1:n

fak = fak*i;

end

% Ausgabe

disp(sprintf('fakultaet(%i)=%i',n,fak))

n = 3fakultaet(3)= 6

Page 18: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 18

for-Anweisung

Beispiele

n = input( 'n = ' );

for i = 1:n

disp(i*i)

end

n = 5

1

4

9

16

25

n = input( 'n = ' );

x = [1:n].*[1:n];

disp( x )

n =

x =1 4 9 16 25

5

for-Anweisung

n = input('n = ')

zahlen = round( rand(1,n)*100 )

for i = 1:n-1

for j = 1:n-i

if zahlen(j)>zahlen(j+1)

temp = zahlen(j);

zahlen(j) = zahlen(j+1);

zahlen(j+1) = temp;

end

end

end

disp('zahlen =')

disp(zahlen)

Hier werden n

Zufallszahlen

generiert und in

die Variable

zahlen

gespeichert.

Page 19: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 19

Funktionen

Funktionen sind das wichtigste Konzept in der Welt der höheren Programmiersprache.

FunktionEingabe Ausgabe

Funktionen sind ein sehr wichtiges Hilfsmittel, um Probleme in kleinere Teilaufgaben zerlegen zu können.

Sie ermöglichen damit eine bessere Strukturierung eines Programms sowie die Wiederverwertbarkeit vom Programmcode.

MATLAB-Funktionen

function Rückgabevariable = Funktionsname ( Parameterliste )

% Programmbeschreibung für Online-Hilfe

Anweisungen

Rückgabevariable = berechneter_Wert

return

etwas genauer:

Die return Anweisung befindet sich an beliebiger Stelle und

beliebig oft in dem Funktionsrumpf; sie beendet die Ausführung der

Funktion mit der Rückgabe der Rückgabevariable.

Funktionsname.m

Page 20: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 20

FunktionenBeispiel

function sum = summe(n)

% summe(n) Berechnet die Summe aller Zahlen % von 1 bis n, wo n eine natürliche % Zahl sein muss.% summe(n) = 1+2+...+(n-1)+n

if n>=0sum = n*(n+1)/2

elsesum = 'Fehler! weil n negativ ist'

endreturn

Visualisierung von zweidimensionalen Daten und Funktionen

Visualisierung von Daten - Histogramme

- Boxplots

- Kreidiagramme

Beispiel

y = [2 3 5 7 11 13 17];

bar(y)

1 2 3 4 5 6 7

Page 21: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 21

Visualisierung von Daten

Beispiel

clear

n = input('n = ');

y = rand(1,n)*1000;

plot(y,'b*');

y = rand(1,n)*1000;

hold on

plot(y,'r*');

y = rand(1,n)*1000;

plot(y,'g*');

hold off

plot ( X-Daten, Y-Daten, Formatangabe )

Formatierungen für plot

b blau . Punkt - durchgezogen

g grün o Kreis : punktiert

r rot x Kreuz -. Strich-Punkte

c zyan + Plus -- Striche

m magenta * Sterne

y gelb s Quadrat

k schwarz d Diamant

w weiß v Dreieck (unten)

^ Dreieck (up)

< Dreieck (left)

> Dreieck (right)

p Pentagramm

h Hexagramm

Farbe Marker Linienart

Page 22: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 22

Visualisierung von FunktionenBeispiel

% Sinus-Funktion

x = -3*pi:0.01:3*pi;

y = sin(x);

hold on

for i = 1:50

y = y*i/(i+1);

plot(x,y,'k');

end

hold off

Visualisierung von Funktionen

% Exponential-Funktion

clf

x = -3:0.2:3;

subplot(2,1,1);

bar(x,exp(-x.^2));

subplot(2,1,2);

plot(x,exp(-x.^2),'r');

subplot(m,n,p)

Unterteilung des Ausgabefensters

Das aktuelle Ausgabefenster wird in eine mxn-Matrix von Fenstern unterteilt, das p-teTeilfenster wird als aktueller Ausgabebereich festgelegt.

Page 23: MATLAB - page.mi.fu-berlin.depage.mi.fu-berlin.de/landgraf/SommerUni/doc/MatLab_1.pdf · Sommeruniversität 2005 Dr. Margarita Esponda 2 MATLAB zMATLAB ist ein Softwarepaket besonderes

Sommeruniversität 2005 Dr. Margarita Esponda 23

Visualisierung von 3D-FunktionenBeispiel

% Glockenfunktion

clf

x = -2.5:0.1:2.5;

y = x;

[X,Y] = meshgrid(x,y);

surf(x,y,exp(-(X.^2 + Y.^2)));