Datei: Maple

Werbung
Datei:
Maple-Kurs3.mw
Datum: 20.08.2004
Erstellt von Prof. Dr. Ing. Warendorf Dr. habil. unter Verwendung einer Vorlage von D. Gröger,
Fachhochschule München, Fachbereich 03: Maschinenbau/Fahrzeugtechnik/Flugzeugtechnik
-------------------------------------------------------------------------------------------------------------------Maple - Praktikum
des Zentrums für Hochschuldidaktik der bayerischen
Fachhochschulen (DiZ)
Teil 4: Funktionen von 2 Variablen (Flächen im Raum )
In diesem Worksheet konzentrieren wir uns das Thema: Die Analysis von Funktionen
zweier unabhängigen Veränderlichen.
Wir zeigen, wie man von ebenen Kurven, die in Parameter- oder in Polarform gegeben sind, Plots
erstellen sowie Steigungen, Krümmungen, Längen und Inhalte von Sektorflächen berechnen
kann.
Von einer Funktion zweier Variablen werden Graph, Höhenlinien, Schnitte mit Ebenen parallel
zu Koordinatenebenen gezeichnet und partielle Ableitungen, Extremstellen und Tangentialebenen
ermittelt.
> restart;
# Löschen aller Bindungen von Variablen
Definition einer Funktion
Graphische Darstellung
--------------------------------------------------------------------------------------------------------------------Graphische Darstellung
--------------------------------------------------------------------------------------------------------------------Es gibt mehrere Möglichkeiten der graphischen Darstellung einer Funktion zweier Variablen.
Wir beginnen mit dem Graphen, der als Fläche im Raum aufgefasst und mit dem Befehl plot3d
dreidimensional dargestellt wird. Im Gegensatz zu dem Befehl plot müssen hier die Bereiche
der
Variablen angegeben werden.
> plot3d(x^2+y^2,x=-5..5,y=-5..5);
# Drehparaboloid
> plot3d(x^2-y^2,x=-5..5,y=-5..5);
# Einschaliges Hyperboloid
Wenn man sich mit dem Kursor im Plot befindet und die linke Maustaste drückt, erscheint der
Plotrand. Klickt man dann mit der rechten Maustaste, so erscheint ein Menü zur Bearbeitung des
Plots. Die Voreinstellung ist ohne sichtbare Koordinatenachsen. Bei gedrückter linker Maustaste
kann man den Graphik drehen (die Blickrichtung verändern).
Ohne erhöhte Zeichengenauigkeit ergäbe sich in den folgenden Beispielen ein höchst
unrealistisches
Bild des Graphen:
> plot3d((1-x^2)/(y^2-2*x^2),x=-5..5,y=-5..5,numpoints=1000);
> plot3d(y/(x-1)-54/x^2,x=-5..5,y=-5..5,numpoints=1000);
# Van der Waalssche Funktion
Eine weiterer Befehl zur Erhöhung der Zeichengenauigkeit ist grid , wodurch die Anzahl der
Datenpunkte in zwei Richtungen festgelegt wird, also etwa [50,50] für 2500 Punkte.
Mit der Option orientation bestimmt man die Blickrichtung, aus der die Graphik betrachtet
wird.
Bei der Voreinstellung von [45,45] sehen Sie die Graphik von schräg oben, die x-Achse zeigt
nach
vorne links, die y-Achse nach vorne rechts. Eine gebrächlichere Ansicht lautet [-45,60]: Die
Ansicht
ist dann nicht mehr so steil von oben, die x-Achse zeigt nach rechts vorne, die y-Achse nach
rechts
hinten.
> plot3d(sin(x*y),x=0..7,y=0..7,axes=framed,scaling=constrained);
> plot3d(sin(x*y),x=0..7,y=0..7,axes=framed,grid=[50,50],
scaling=constrained,orientation=[-45,60]);
> plot3d(sin(6*sqrt(x^2+y^2)),x=-2..2,y=-2..2,axes=framed,
scaling=constrained);
> plot3d(sin(6*sqrt(x^2+y^2)),x=-2..2,y=-2..2,axes=framed,
grid=[40,40],scaling=constrained,orientation=[-45,60]);
Eine andere Möglichkeit der graphischen Darstellung von Funktionen zweier Variablen ist das
Zeichnen von Höhenlinien. Hierzu verwendet man die Anweisung implicitplot aus dem Paket
plots .
Wir stellen zunächst einzelne Höhenlinien dar (etwa für die Höhen 1,2,-1,-2):
> f := (x,y) -> x^2-y^2;
# Funktion definieren
> c := -1;
# Höhe vorgeben
> plots[implicitplot](f(x,y)=c,x=-5..5,y=-5..5,grid=[50,50]);
Mit plots[implicitplot] wird der nur der Befehl implicitplot aus dem Paket plot geladen.
Wollen Sie mehrere Befehle aus dem Paket plot verwenden, dann ist es sinnvoll, das Paket
vollständig zu laden. Danach können die Befehle direkt angesprochen werden.
Das Paket bleibt dann bis zur Ausführung des Befehls restart geladen.
Syntax:
> with(plots);
> implicitplot(f(x,y)=c,x=-5..5,y=-5..5,grid=[50,50]);
Nun werden die Kurven in einem einzigen Diagramm abgebildet.
Schnittkurvendiagramme
Höhenlinien
> höhenlinien := {seq(f(x,y)=c,c=-5..5)};
> plots[implicitplot](höhenlinien,x=-5..5,y=-5..5,grid=[50,50]);
Wir führen noch ein weiteres Beispiel vor:
> f := (x,y) -> x^2+y^2;
# Funktion definieren
> höhenlinien := {seq(f(x,y)=c,c=0..10)}:
> plots[implicitplot](höhenlinien,x=-5..5,y=-5..5,grid=[50,50]);
Ähnlich wie Höhenlinien können auch die Schnitte des Funktionsgraphen mit Ebenen parallel zur
(y,z)-Ebene bzw. mit Ebenen parallel zur (x,z)-Ebene zur Veranschaulichung des Graphen
dienen.
parallel zur (y,z)-Ebene
> f := (x,y) -> x^2-y^2;
# Funktion definieren
> c := 0;
# Abstand zur (y,z)-Ebene festlegen
> plot(f(c,y),y=-5..5);
# Plot einer Schnittkurve
> schnitte1 := {seq(f(c,y),c=0..5)};
# Menge von Schnittkurven
> plot(schnitte1,y=-5..5);
# Plot aller Schnittkurven
>
>
>
>
>
f := (x,y) -> x^2+y^2;
# Funktion definieren
c := 0;
# Abstand zur (x,z)-Ebene festlegen
plot(f(x,c),x=-5..5);
# Plot einer Schnittkurve
schnitte2 := {seq(f(x,c),c=0..5)}:
# Menge von Schnittkurven
plot(schnitte2,x=-5..5);
# Plot aller Schnittkurven
Natürlich gehört zu einer angemessenen Darstellung auch eine Beschriftung der einzelnen
Höhenlinien bzw. Schnittkurven. Hierfür dient die MAPLE-Anweisung plots[textplot]([ x , y , 'text' ]) ,
wodurch der angegebene Text zentriert über der Position (x,y) angegeben wird. Also beispielsweise:
> p1 := plot(f(x,c),x=-5..5):
> p2 := plots[textplot]([4,10,'c=0']):
> plots[display]({p1,p2});
Partielle Ableitungen, Extremstellen
Aufgaben
1. Gegeben sei die Funktion
.
Ermitteln Sie eine Wertetabelle (Funktionswerte für alle Kombinationen) für x=-2, -1 , 1, 2
und y=-2, -1 , 1, 2 .
Benutzen Sie dazu eine for Schleife
2. Zeichnen Sie in einem Diagramm die Graphen der Funktionen
, in dem
,
Bereich von -5 bis 5 für
und
. Beschriften Sie die einzelnen Graphen!
3.
a) Plotten Sie den Graphen der Funktion
in einem geeigneten Bereich für
und
die Ihnen
am Besten erscheinende Ansicht zu erhalten.
b) Plotten Sie die Höhenlinien von
. Variieren Sie die Darstellungsoptionen, um
für c=-2, c=-1.5, c=-1, .... , c=+2. Welches c ist
für
die waagerechten Linien verantwortlich? Warum sind es mehrere waagerechten Linien?
4. a) Ermitteln Sie sämtliche partiellen Ableitungen erster und zweiter Ordnung der Funktion
.
b) Bestimmen Sie die Tangentialebene an die obige Funktion im Punkt P=(1;2;z).
Plotten Sie die Funktion und die Tangentialebene in einem Diagramm. Versuchen Sie
eine Darstellung zu finden, in der die Tangentialebene und die Funktion gut erkennbar ist.
5. Gegeben ist die implizite Funktion
Bestimmen Sie die Ableitung ( ' = Finden Sie zuerst heraus welchen Wert y hat.
=0.
/
) an der Stelle P (1,y).
> ERGAENZUNGEN Dr. Pöschl
Fourierreihe der Sägezahnfunktion:
> y1:=1/2 - 1/Pi*sin(x);
> y2:= y1 - 1/Pi*sin(2*x)/2;
> y3:= y2 - 1/Pi*sin(3*x)/3;
> plot({y1,y2,y3},x=0..4*Pi,color=[red,blue,green]);
Funktionen mit 2 Variablen:
> restart;
> f:= x^2 + y^2;#
>
Rotationsparaboloid (Blumenvase)
Zeichnen des Graphen
> plot3d(f,x=-2..2,y=-2..2);
> plot3d(f,x=-2..2,y=-2..2,axes=boxed);
>
Schöner sieht es aus in Polarkoordinaten (r = Radius und t=Winkel)
> plot3d([r*cos(t),r*sin(t),r^2],t=0..2*Pi,r=0..3):
> %;
>
>
> restart;
> with(plots);
Warning, the name changecoords has been redefined
> p:=plot3d([r*cos(t),r*sin(t),r^2],t=0..2*Pi,r=0..3):
> display(p,style=hidden);
> display(p,style=patchnogrid);
> display(p,style=patchcontour);# Höhenlinien zeichnen
> display(p,style=patchcontour,shading=zhue);
Erster Winkel 60 Grad zur Z-Achse um x Achse gedreht,zweiter Winkel = Längengrad
die letzten 3 Zahlen addidive Farbmischung rot gruen blau
> display(p,light=[60,90,1,0,0]);
> display(p,light=[60,90,1,1,1]);
> display(p,light=[180,0,1,1,1]);# Beleuchtung von unten
> z := x^2-y^2;# Sattelfläche
> plot3d(z,x=-2..2,y=-2..2);
> z := (x^2-y^2)*(x^3-y^3);# Sattelfläche mitflachem Bereich
> plot3d(z,x=-2..2,y=-2..2);#
> z:= sqrt(x^2+y^2);# Kegel
> plot3d(z,x=-2..2,y=-2..2);#
Aufgabe. Kegel mit Kreisberandung oben darstellen (Parameterdarstellung) !!
>
> plot3d([r*cos(t),r*sin(t),r],t=0..2*Pi,r=0..3);
>
>
Herunterladen