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

 Documentation /  Mathematica /  Das Mathematica Buch /  Die Prinzipien von Mathematica /  Modularität und die Benennung von Dingen /

Fortgeschrittenes Thema: Variablen in reinen Funktionen und in RegelnBlöcke und lokale Werte

2.6.5 Scheinvariablen in der Mathematik

Wenn Sie eine mathematische Formel aufstellen, müssen Sie häufig verschiedene Arten lokaler Objekte oder „Scheinvariablen" einführen. Sie können solche Scheinvariablen mittels Modulen und anderen Mathematica-Bereichskonstrukten formulieren.

Integrationsvariablen sind ein übliches Beispiel für Scheinvariablen in der Mathematik. Wenn Sie ein formales Integral aufschreiben, verlangt die übliche Schreibweise, daß Sie eine Integrationsvariable mit einem Namen einführen. Diese Variable ist im Grunde „lokal" bezüglich des Integrals, und ihr Name, der willkürlich ist, darf nicht in Konflikt mit anderen Namen in Ihrem mathematischen Ausdruck stehen.

Hier ist eine Funktion zur Evaluierung eines Integrals.

In[1]:= p[n_] := Integrate[f[s] s^n, {s, 0, 1}]

Das s steht in Konflikt mit der Integrationsvariablen.

In[2]:= p[s + 1]

Out[2]=

Hier ist eine Definition, in der die Integrationsvariable als lokal für das Modul gültig spezifiziert wird.

In[3]:= pm[n_] := Module[{s}, Integrate[f[s] s^n, {s, 0, 1}]]

Da Sie ein Modul benutzt haben, benennt Mathematica zur Konfliktvermeidung automatisch die Integrationsvariable um.

In[4]:= pm[s + 1]

Out[4]=

In vielen Fällen ist es am wichtigsten, daß Scheinvariablen lokal bleiben und sich mit anderen Variablen in Ihrem mathematischen Ausdruck nicht überlagern. In einigen Fällen ist es hingegen jedoch wichtig, daß unterschiedliche Verwendungen derselben Scheinvariablen nicht zu einem Konflikt führen.

Wiederholte Scheinvariablen erscheinen oft in Produkten von Vektoren und Tensoren. Nach der „Summations-Konvention" wird jeder Vektor- oder Tensor-Index, der genau zweimal erscheint, über alle möglichen Werte summiert. Der tatsächliche Name des wiederholten Indexes ist nie von Bedeutung, aber wenn es zwei separate wiederholte Indizes gibt, ist es wesentlich, daß ihre Namen nicht zu einem Konflikt führen.

Hier wird der wiederholte Index j als eine Scheinvariable aufgestellt.

In[5]:= q[i_] := Module[{j}, a[i, j] b[j]]

Das Modul gibt den unterschiedlichen Vorkommnissen der Scheinvariablen unterschiedliche Namen.

In[6]:= q[i1] q[i2]

Out[6]=

Es gibt viele Situationen in der Mathematik, wo Sie Variablen mit eindeutigen Namen benötigen. Ein Beispiel dafür ist die Darstellung von Lösungen für Gleichungen. Für eine Gleichung wie gibt es eine unendliche Anzahl von Lösungen, jede von der Form . Dabei ist eine Scheinvariable, die gleich jeder ganzen Zahl sein kann. Wenn Sie für zwei getrennte Fälle Lösungen der Gleichung erzeugen, dann ist der Wert von in beiden Fällen nicht zwangsläufig der gleiche. Daher müssen Sie die Lösung so konstruieren, daß das Objekt jedesmal unterschiedlich ist.

Dies definiert einen Wert für sinsol, mit n als Scheinvariable.

In[7]:= sinsol := Module[{n}, n Pi]

Unterschiedliche Vorkommnisse der Scheinvariablen werden auseinandergehalten.

In[8]:= sinsol - sinsol

Out[8]=

Eindeutige Objekte werden auch bei der Darstellung von „Integrationskonstanten" benötigt. Wenn Sie ein Integral bestimmen, lösen Sie im Grunde eine Gleichung für eine Ableitung. Im allgemeinen gibt es viele mögliche Lösungen, die sich durch additive Integrationskonstanten unterscheiden. Die gewöhnliche Mathematica-Funktion Integrate liefert immer eine Lösung ohne Integrationskonstante. Wenn Sie also Integrationskonstanten einführen müssen, müssen Sie Module benutzen, um sicherzustellen, daß sie immer unterschiedlich sind.

Fortgeschrittenes Thema: Variablen in reinen Funktionen und in RegelnBlöcke und lokale Werte