Hallo,
On Tue, 31 Aug 2010, WOYSCH, Gunter wrote:
Stuttgart, den 31. August 2010
Equation-Handling in Mathematica
An alle Mathematica-Kundigen !
Hier kommt eine Frage, die ich schon immer einmal stellen wollte ..
Wenn Sie mit mathematischen Gleichungen mit Bleistift auf Papier arbeiten, dann kommt es ja immer wieder vor, dass Sie einen
Term von einer Seite auf die andere Seite umsetzen, dass Sie mit einem Faktor multiplizieren oder dividieren - oder dass Sie
etwas ähnliches tun.
Wenn ich "naiv" über Mathematica nachdenke, dann würde ich das in Mma wie folgt machen wollen :
- Beispiel 1
equation1 = a*x^2 + b*x == c
equation2 = equation1 - c
- Beispiel 2
equation3 = a*x^2 + 0.5*b*x == c
equation4 = equation3 * 2
- Beispiel 3
equation5 = a*x^2 + b*x == c / y
equation6 = 1/equation5
Eigentlich erwarte ich, dass bei allen diesen Beispielen Mma die angegebenen Operationen jeweils auf beide Seiten einer
Gleichung anwendet und die Gleichung dann in der überarbeiteten Form ausgibt.
Wenn man es ausprobiert, funktioniert es leider nicht so.
Wie führt man diese Operationen mit Mathematica jetzt aus ?
Wie könnte man die Operationen, wie oben angegeben, durch eine Mathematica-Funktion realisieren ?
Danke für jede Antwort !
Mit freundlichen Grüssen,
Gunter Woysch
vielleicht hift das weiter:
Mathematica 7.0 for Linux x86 (64-bit)
Copyright 1988-2009 Wolfram Research, Inc.
In[1]:= equation1 = a*x^2 + b*x == c
2
Out[1]= b x + a x == c
In[2]:= Equal @@ (List @@ equation1 - c)
2
Out[2]= -c + b x + a x == 0
In[2]:= equation3 = a*x^2 + 0.5*b*x == c
2
Out[3]= 0.5 b x + a x == c
In[4]:= equation4 = Equal @@ (List @@ equation3*2)
2
Out[4]= 2 (0.5 b x + a x ) == 2 c
In[5]:= modEqn[eqn_Equal, op_] := Equal @@ (op[List @@ eqn])
In[6]:= modEqn[equation1, (# - c) &]
2
Out[6]= -c + b x + a x == 0
In[7]:= equation5 = a*x^2 + b*x == c/y;
In[8]:= modEqn[equation5, (1/#) &]
1 y
Out[8]= ---------- == -
2 c
b x + a x
Gruss,
Oliver