|
2.2.9 Fortgeschrittenes Thema: Arbeiten mit Operatoren
Einen Ausdruck wie f[x] können Sie sich als Anwendung eines Operators f auf den Ausdruck x vorstellen. Einen Ausdruck wie f[g[x]] können Sie sich als Ergebnis der Komposition der Operatoren f und g und die Anwendung des Ergebnisses auf x vorstellen.
Einige Funktionaloperationen
Dies repräsentiert die Komposition der Funktionen f, g und h.
In[1]:= Composition[f, g, h]
Out[1]= 
Sie können Kompositionen von Funktionen symbolisch manipulieren.
In[2]:= InverseFunction[Composition[%, q]]
Out[2]= 
Die Komposition wird explizit evaluiert, wenn Sie ein bestimmtes Argument anbieten.
In[3]:= %[x]
Out[3]= 
Die Summe zweier Ausdrücke können Sie in Mathematica erhalten, indem Sie einfach x + y eintippen. Manchmal ist es ebenfalls lohnend, die Ausführung von Operationen auf Operatoren, wie zum Beispiel die Addition, zu betrachten.
Sie können sich dies so vorstellen, daß es die Summe zweier Operatoren f und g enthält.
In[4]:= (f + g)[x]
Out[4]= 
Mit Through können Sie den Ausdruck in eine explizitere Form umwandeln.
In[5]:= Through[%, Plus]
Out[5]= 
Dies entspricht dem mathematischen Operator .
In[6]:= Identity + (D[#, x]&)
Out[6]= 
Mathematica wendet die verschiedenen Teile des Operators nicht automatisch auf einen Ausdruck an.
In[7]:= % [x^2]
Out[7]= 
Mit Through können Sie den Operator anwenden.
In[8]:= Through[%, Plus]
Out[8]= 
Operationen für die Arbeit mit Operatoren
Dies hat als Kopf einen komplizierten Ausdruck.
In[9]:= t = ((1 + a)(1 + b))[x]
Out[9]= 
Funktionen wie Expand wirken nicht automatisch in die Köpfe von Ausdrücken hinein.
In[10]:= Expand[%]
Out[10]= 
Wenn die Heads-Option True gesetzt ist, wirkt MapAll innerhalb der Köpfe.
In[11]:= MapAll[Expand, t, Heads->True]
Out[11]= 
Der Ersetzungsoperator /. wirkt innerhalb der Köpfe von Ausdrücken.
In[12]:= t /. a->1
Out[12]= 
Sie können mit Operate eine Funktion gezielt auf den Kopf eines Ausdrucks anwenden.
In[13]:= Operate[p, t]
Out[13]= 
|