|
1.7.1 Funktionen definieren
In diesem Teil des Buches haben wir viele Beispiele für Funktionen kennengelernt, die in Mathematica eingebaut sind. In diesem Abschnitt werden wir nun erläutern, wie Sie Mathematica um Ihre eigenen, einfachen Funktionen erweitern können. In Teil 2 werden die Mechanismen, mit denen Mathematica um Funktionen ergänzt werden kann, dann weitaus ausführlicher beschrieben werden.
In einem ersten Beispiel soll eine Funktion, die f heißen soll, behandelt werden, die ihr Argument quadriert. Der Mathematica-Befehl zur Definition dieser Funktion ist f[x_] := x^2. Das _ (auch „Blank" oder Unterstrich genannt) auf der linken Seite ist sehr wichtig; was es bedeutet, wird weiter unten erklärt. Im Augenblick reicht es, wenn Sie sich merken, daß _ nur auf der linken Seite benutzt wird und nicht auf der rechten Seite Ihrer Definition.
Damit wird die Funktion f definiert. Beachten Sie das _ auf der linken Seite.
In[1]:= f[x_] := x^2
f quadriert sein Argument.
In[2]:= f[a+1]
Out[2]= 
Das Argument kann eine Zahl sein.
In[3]:= f[4]
Out[3]= 
Oder es kann ein komplizierterer Ausdruck sein.
In[4]:= f[3x + x^2]
Out[4]= 
Sie können f in einer Berechnung einsetzen.
In[5]:= Expand[f[(x+1+y)]]
Out[5]= 
Auf diese Weise wird die für f aufgestellte Definition angezeigt.
In[6]:= ?f


Eine Funktion in Mathematica definieren
Die Namen wie zum Beispiel f, die Sie für Funktionen in Mathematica verwenden, sind gewöhnliche Symbole. Deshalb sollten Sie darauf achten, keine Namen zu verwenden, die mit Großbuchstaben beginnen, um Verwechslungen mit eingebauten Mathematica-Funktionen zu vermeiden. Achten Sie auch darauf, daß Sie die Namen in Ihrer Session vorher nicht schon für etwas anderes verwendet haben.
Mathematica-Funktionen können beliebig viele Argumente haben.
In[7]:= buckel[x_, xmax_] := (x - xmax)^2 / xmax
Die Funktion buckel können Sie genauso wie jede andere eingebaute Funktion verwenden.
In[8]:= 2 + buckel[x, 3.5]
Out[8]= 
Dies ergibt eine neue Definition für buckel, die die vorhergehende überschreibt.
In[9]:= buckel[x_, xmax_] := (x - xmax)^4
Die neue Definition wird angezeigt.
In[10]:= ?buckel


Dies löscht alle Definitionen für buckel.
In[11]:= Clear[buckel]
Wenn Sie eine Funktion nicht länger benötigen, so erweist es sich immer als gut, die von Ihnen für die Funktion aufgestellten Definitionen zu löschen. Tun Sie dies nicht, so werden Sie dann auf Schwierigkeiten stoßen, wenn Sie später in Ihrer Mathematica-Session dieselbe Funktion für einen anderen Zweck einzusetzen versuchen. Mit Clear[f] können Sie alle Definitionen löschen, die Sie für eine Funktion oder ein Symbol f aufgestellt haben.
|