DMUG-Archiv 1998

Frühere

 

Chronologischer Index

 

Spätere

Vorherige

 

Thematischer Index

 

Nächste

Expression Matching

In einen Ausdruck kommen immer wieder Produkte der Art

Sqrt[1/(ny^2 + nz^2)]*Sqrt[1/((ny^2 + nz^2)*(nx^2 + ny^2 + nz^2))]

vor. Offensichtlich kann man den Term 1/(ny^2+nz^2) ausklammern und die 
Wurzel daraus direkt ziehen. Nun will ich Mathematica diese Arbeit
machen lassen, aber irgendwie "will es nicht":

Sqrt[1/(ny^2 + nz^2)]*Sqrt[1/((ny^2 + nz^2)*(nx^2 + ny^2 + nz^2))] /. 
{Sqrt[1/a_]*Sqrt[1/b_] -> Sqrt[1/(a*b)]}

fuehrt zu nichts, weil der Ausdruck unter der zweiten Wurzel
nicht mit 1/b_ matcht. Tatsaechlich ist das Problem loesbar, indem man 

Sqrt[1/(ny^2 + nz^2)]*Sqrt[1/((ny^2 + nz^2)*(nx^2 + ny^2 + nz^2))] /. 
{Sqrt[1/a_]*Sqrt[1/(b_*c_)] -> Sqrt[1/(a*b*c)]}

und anschlieszend

%/.Sqrt[1/(a_^2*b_)]->1/a*Sqrt[1/b]

ersetzt, aber das ist etwas umstaendlich zu handhaben. 

Deshalb die Frage: Gibt es ein Muster, das mit Sqrt[1/expression] matcht, wobei 
expression *beliebiges* sein kann, z.B. eine Summe, ein Produkt oder auch eine 
einfache Zahl - ohne dasz man selbst alle diese Faelle hinschreiben musz?

Adalbert Hanszen <hsse@XXXXXXX.de>


Antworten:
Re: Expression Matching
Markus van Almsick, 24.02.1997
Re: Expression Matching
Andreas.Sattler, 25.02.1997

Frühere

 

Chronologischer Index

 

Spätere

Vorherige

 

Thematischer Index

 

Nächste

DMUG-Archiv, http://www.mathematica.ch/dmug-liste.html; Letzte Änderung: 08.09.2003 20:44