MathGroup Archive 2004

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Problem with FullSimplify in Version 5: Rationals are converted to Reals

  • To: mathgroup at smc.vnet.net
  • Subject: [mg46306] Re: [mg45482] Problem with FullSimplify in Version 5: Rationals are converted to Reals
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Fri, 13 Feb 2004 21:57:36 -0500 (EST)
  • References: <402D01EB.6040505@uni-mainz.de>
  • Sender: owner-wri-mathgroup at wolfram.com

For all its worth here is another way that uses Hold instead of 
Rationalize:


Solve[ReleaseHold[Simplify[(If[NumericQ[#] && Head[#] =!= Real, Hold[#],
        #] & ) //@ expr]], deltaL]


Inverse functions are being used by Solve so some solutions may not be 
found; use Reduce for complete solution information.


{{deltaL -> 3.7998970410976023,
    Erf[(0.3070925731856876*(2.302585092994046*(0.1*deltaL - 10.) +
         23.025850929940457))/
       Sqrt[(0.6089140226261116 - 0.005294904544574884*(deltaL + 20.))^2 
+
         0.25302502757884177]] -> 0.41421356237309503}}

The "two rule" form of the solution is curious and surprised me, but we 
can check that the solution is self-consistent:


%[[1,2]]/.%[[1,1]]

0.414214->0.414214




On 13 Feb 2004, at 17:57, oberfeld wrote:

> Dear list,
>
> some weeks ago, I posted a question concerning FullSimplify in Ma 5.0 
> which seems to occur because Rationals are converted to Reals.
>
> Thanks to those who suggested work-arounds! Unfortunately, I was not 
> able to resolve my problem following the suggestions. Wolfram support 
> meanwhile confirmed this to be a problem of version 5.0.0 and said 
> that the problem were   resolved in Ma 5.0.1. However, after 
> installing the update I had to realize that this is *not correct*.
>
> So, for all who are interested, here comes the 'full problem' (and its 
> solution) again:
>
> I have to solve a rather nasty expr for a variable deltaL:
>
> expr=1/Sqrt[2] ==
>   (1/2)*(1 + (1/2)*(-1 - Erf[(-(Log[10000000000]/Log[10]) - 
> Log[10^(-12 + (20 + deltaL)/10)]/Log[10])/
>          (Sqrt[2]*Sqrt[0.25302502757884177 + (0.6089140226261116 - 
> 0.005294904544574884*(20 + deltaL))^2])])) +
>    (1/4)*(1 + Erf[(Log[10000000000]/Log[10] + Log[10^(-12 + (20 + 
> deltaL)/10)]/Log[10])/
>        (Sqrt[2]*Sqrt[0.25302502757884177 + (0.6089140226261116 - 
> 0.005294904544574884*(20 + deltaL))^2])]);
>
> In Ma 3+4, the following straightforward expression works:
>
> Solve[FullSimplify[expr],deltaL]
>
> In Ma 5, however, the same expression produces the all-too-well-known 
> message "Solve::tdep: The equations appear to involve the variables to 
> be solved for in an essentially non-algebraic way."
>
> Switching to Simplify (instead of FullSimplify), as Andrzej & Bob 
> suggested, does not help (at least on my machine).
>
> The only solution I found (thank's for the idea, Bob!), was to use 
> Rationalize:
>
> N[Solve[Simplify[Rationalize[expr,0]],deltaL]]
> Out:={deltaL->3.7999}
>
> Note, that *FullSimplify* still does not work!!
>
> N[Solve[FullSimplify[Rationalize[expr,0]],deltaL]]
>
>
>
> Would be no problem were it not for many of such expressions lingering 
> in my code, so that I have to step through it and insert that 
> "Rationalize magic" each and every time... ;-(
>
> Best wishes
>
> Daniel
>
>
> -------------------------------------
> Dipl. Psych. Daniel Oberfeld-Twistel
> University of Mainz
> Institute of Psychology
> Experimental Psychology
>
> Staudingerweg 9
> 55099 Mainz
> Germany
>
> T.   ++49 (0) 6131 39 22423
> Fax. ++49 (0) 6131 39 22480
>
>
>
>
Andrzej Kozlowski
Chiba, Japan
http://www.mimuw.edu.pl/~akoz/


  • Prev by Date: Re: dvips complaint regarding Mathematica 5.0 eps graphics
  • Next by Date: Re: significant digits in random numbers in scientificform
  • Previous by thread: Re: Problem with FullSimplify in Version 5: Rationals are converted to Reals
  • Next by thread: Re: Problem with FullSimplify in Version 5: Rationals are converted to Reals