This is documentation for Mathematica 4, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.1)

 Documentation /  Mathematica /  Das Mathematica Buch /  Die Prinzipien von Mathematica /  Muster /

Muster für einige übliche Typen von AusdrückenInhalt

2.3.14 Ein Beispiel: Definition einer eigenen Integrations-Funktion

Jetzt, wo wir die Grundzüge von Mustern in Mathematica eingeführt haben, können wir sie für ein mehr oder weniger vollständiges Beispiel benutzen. Wir werden zeigen, wie sich eine eigene einfache Integrations-Funktion in Mathematica definieren läßt.

Von einem mathematischen Gesichtspunkt aus ist die Integrations-Funktion durch eine Folge mathematischer Relationen definiert. Durch Aufstellen von Transformationsregeln für Muster lassen sich diese mathematischen Relationen unmittelbar in Mathematica implementieren.

Definitionen für eine Integrations-Funktion

Dies implementiert die Linearitätsrelation für Integrale: .

In[1]:= integrate[y_ + z_, x_] :=
integrate[y, x] + integrate[z, x]

Durch die Assoziativität von Plus gilt die Linearitätsrelation für eine beliebige Anzahl von Termen in der Summe.

In[2]:= integrate[a x + b x^2 + 3, x]

Out[2]=

Hierdurch zieht integrate Faktoren heraus, die unabhängig von der Integrationsvariablen x sind.

In[3]:= integrate[c_ y_, x_] := c integrate[y, x] /; FreeQ[c, x]

Mathematica testet jeden Term in jedem Produkt, um zu sehen, ob er die FreeQ-Bedingung erfüllt und damit herausgezogen werden kann.

In[4]:= integrate[a x + b x^2 + 3, x]

Out[4]=

Dies liefert das Integral einer Konstanten.

In[5]:= integrate[c_, x_] := c x /; FreeQ[c, x]

Jetzt kann der konstante Term in der Summe integriert werden.

In[6]:= integrate[a x + b x^2 + 3, x]

Out[6]=

Dies liefert die Standardformel für das Integral . Durch Einsatz des Musters x_^n_., anstelle von x_^n_, berücksichtigen wir auch den Fall .

In[7]:= integrate[x_^n_., x_] :=
x^(n+1)/(n+1) /; FreeQ[n, x] && n != -1

Jetzt kann das Integral vollständig berechnet werden.

In[8]:= integrate[a x + b x^2 + 3, x]

Out[8]=

Natürlich berechnet auch die eingebaute Integrations-Funktion Integrate (mit großem I) das Integral.

In[9]:= Integrate[a x + b x^2 + 3, x]

Out[9]=

Hier ist die Regel für die Integration der Reziproken einer linearen Funktion. Das Muster a_. x_ + b_. steht für eine beliebige lineare Funktion von x.

In[10]:= integrate[1/(a_. x_ + b_.), x_] :=
Log[a x + b]/a /; FreeQ[{a,b}, x]

Hier haben sowohl a als auch b ihre Vorgabewerte angenommen.

In[11]:= integrate[1/x, x]

Out[11]=

Hier ist ein komplizierterer Fall. Das Symbol a paßt jetzt zu 2 p.

In[12]:= integrate[1/(2 p x - 1), x]

Out[12]=

Sie können weitermachen und viele weitere Regeln zur Integration hinzufügen. Hier ist eine Regel zur Integration von Exponentialfunktionen.

In[13]:= integrate[Exp[a_. x_ + b_.], x_] :=
Exp[a x + b]/a /; FreeQ[{a,b}, x]

Muster für einige übliche Typen von AusdrückenInhalt