DMUG-Archiv 2010

Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

Re: Equation-Handling in Mathematica

Hallo Gunter,

Schade, dass Equation-Handling in der skizzierten Aufgabenstellungnicht durch ein Kommando direkt in Mathematica unterstützt wird.

Was heisst "nicht durch ein Kommando direkt"?

Sie wollen verschiedene Operationen auf die Gleichung anwenden, also muss sich die beidseitige Anwendung hinter den üblichen Rechensymbolen dieser Operationen verbergen. Genau das wird von Romans Package EqualThread geleistet. Schreiben Sie es in eine Datei EqualThread.m im Arbeitsverzeichnis, speichern Sie diese und los geht's:

In[1]:= SetDirectory[NotebookDirectory[]];
In[7]:= Needs["EqualThread`", "EqualThread.m"];

In[8]:= eqn = a==b Log[2 x];

In[17]:= Reverse[Exp[eqn/b]/2]
Out[17]= x == E^(a/b)/2

Gleichwohl können Sie weiterhin mit "/" dividieren

In[16]:= {{a + a, b, c}, d, e, {{{{f}, g}, h}, j}}/2
Out[16]= {{a, b/2, c/2}, d/2, e/2, {{{{f/2}, g/2}, h/2}, j/2}}

In[18]:= 8/4
Out[18]= 2

Will man zwischendurch wissen, ob EqualThread geladen ist, dann fragt man

In[19]:= Remove[equalThreadQ]
         equalThreadQ := Contexts["EqualThread`*"] =!= {}

In[20]:= equalThreadQ
Out[20]= True

Das ist interessant, weil die Symbole nicht pro geöffnetem Notebook definiert sind, sondern pro laufendem Mma-Kernel.

Gruss
Udo.


Verweise:
Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

DMUG DMUG-Archiv, http://www.mathematica.ch/archiv.html