Re: Re: Reduce/Solve
- To: mathgroup at smc.vnet.net
- Subject: [mg49993] Re: [mg49990] Re: Reduce/Solve
- From: "Dr A.H. Harker" <a.harker at ucl.ac.uk>
- Date: Tue, 10 Aug 2004 06:02:48 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Dear Dana, Many thanks for this. I had observed this phenomenon of obtaining different results with different variable names in other situations, but it had slipped my mind. It's delightful to see it demonstrated in such a simple case. Much as I love Mathematica, this kind of "feature" is infuriating. Tony Dr A.H. Harker Director of Postgraduate Studies Deputy Head, Condensed Matter and Materials Physics Group Department of Physics and Astronomy University College London Gower Street LONDON WC1E 6BT (44)(0)207 679 3404 a.harker at ucl.ac.uk ]->-----Original Message----- ]->From: Dana DeLouis [mailto:delouis at bellsouth.net] To: mathgroup at smc.vnet.net ]->Sent: 09 August 2004 09:30 ]->To: mathgroup at smc.vnet.net ]->Subject: [mg49993] [mg49990] Re: Reduce/Solve ]-> ]->Hello. It is because of Mathematica's huge bug in variable names. ]->Reduce ]->often doesn't work because of this bug. The first thing you need to try ]->is ]->to change the variable name. I would first start by changing the "r" to ]->a ]->variable name that comes near the beginning of the alphabet, like "a" (at ]->least something before the "d" in the equation). ]-> ]->Taking your equation, and changing r to a: ]-> ]->eq = J == J0*(1 + r/d)*Exp[-(r/d)] /. r -> a ]-> ]->J == ((1 + a/d)*J0)/E^(a/d) ]-> ]->Now it should work: ]-> ]->tt = Reduce[eq, a] ]-> ]->d != 0 && J == 0 && ]-> (J0 == 0 || a == -d) || ]-> C[1] ? Integers && ]-> J != 0 && J0 != 0 && ]-> d != 0 && a == ]-> -d - d*ProductLog[C[1], ]-> -(J/(E*J0))] ]-> ]->HTH ]->Sad, isn't it! ]-> ]->Dana ]-> ]-> ]->"Dr A.H. Harker" <a.harker at ucl.ac.uk> wrote in message ]->news:cetf3i$6i8$1 at smc.vnet.net... ]->> Dear All, ]->> I tend to think of Reduce as a more powerful tool than Solve, ]->> yet with ]->> ]->> eq = J == J0 (1 + r/d) Exp[-r/d] ]->> ss = Solve[eq, r] ]->> tt = Reduce[eq, r] ]->> ]->> I get useful output from Solve, but Reduce returns the expression ]->> unevaluated. What am I missing? Mathematica 5.0.0.0 under Windows XP. ]->> ]->> Tony ]->> ]->> Dr A.H. Harker ]->> Director of Postgraduate Studies ]->> Deputy Head, Condensed Matter and Materials Physics Group ]->> Department of Physics and Astronomy ]->> University College London ]->> Gower Street ]->> LONDON ]->> WC1E 6BT ]->> (44)(0)207 679 3404 ]->> a.harker at ucl.ac.uk ]->> ]->> ]->>