MathGroup Archive 2006

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

Search the Archive

Re: critical points of a third order polynomial fit (simplification)

  • To: mathgroup at smc.vnet.net
  • Subject: [mg68491] Re: [mg68466] critical points of a third order polynomial fit (simplification)
  • From: "Chris Chiasson" <chris at chiasson.name>
  • Date: Mon, 7 Aug 2006 01:41:22 -0400 (EDT)
  • References: <200608060656.CAA23460@smc.vnet.net> <5951C758-2C5C-4727-AD67-41E11F62F79E@mimuw.edu.pl> <acbec1a40608060838n1c214499ledaa6ebdc94e0ebc@mail.gmail.com> <A35E92CF-D0AD-4DB3-8BCF-C23ECF0E51A4@mimuw.edu.pl> <acbec1a40608060945k24193537uf04f334949cede30@mail.gmail.com> <CCF363D6-7C42-4EF9-AC13-2C47AC77A163@mimuw.edu.pl>
  • Sender: owner-wri-mathgroup at wolfram.com

This convinces me:
If I do end up needing a more precise answer for this part of my code,
I will use Rationalize & then convert back to the WorkingPrecision,
rather than using SetPrecision.

Gracias,

On 8/6/06, Andrzej Kozlowski <akoz at mimuw.edu.pl> wrote:
>
> On 6 Aug 2006, at 18:45, Chris Chiasson wrote:
>
> > Per offlist discussion with Andrzej Kozlowski, it is seen that
> > Mathematica is capable of detecting the numerical ill conditioning in
> > this problem when using arbitrary precision numbers. This can be
> > tested by appending the following replacements to the definition of
> > bracket:
> >
> > /. x_Real?InexactNumberQ :> SetPrecision[x, 14]
> >
> > /. x_Real?InexactNumberQ :> SetPrecision[x, 32]
>
>
> Actually, what hapens in this case is that unless you use precision
> of at least 24 both expressions will return the same (not very
> useful) output: {ComplexInfinity, Indeterminate}. You need precision
> of at leat 25 to get one guaranteed correct digit, in which case you
> will get
>
>
> Precision[x/.rep[3]/.rep[5]//InputForm]
>
> 1.42222
>
>
> Precision[x/.rep[4]/.rep[5]//InputForm]
>
> 1.42222
>
> With lower precision at some point of the computation Mathematica
> attempts to evaluate 1/0``11.03871382942938 (which it interprets as
> ComplexInfinity) issues a warning to the effect that it encountered
> division by zero and then returns the answer {ComplexInfinity,
> Indeterminate}. Although this answer is not very useful, it will be
> the same for both expression and you can see from it that Mathematica
> arrived at an approximate 0, which has 0 digits of Precision (and 11
> of accuracy). This tells you that you should significantly increase
> the precision of your input.
>
> All of this can be avoided by using exact numbers in the input and
> writing everything as
>
> N[expression to be computed,n]
>
> where n is the number of correct digits you want to have in the
> output. Mathematica should then itself choose the right precision in
> the input that guarantees the requested number of digits in the
> output. I think that in most cases this approach is more efficient
> and convenient than using SetPrecision.
>
> Andrzej Kozlowski
>


-- 
http://chris.chiasson.name/


  • Prev by Date: Re: Re: Finding the Number of Pythagorean Triples below a bound
  • Next by Date: Re: critical points of a third order polynomial fit (simplification)
  • Previous by thread: Re: critical points of a third order polynomial fit (simplification)
  • Next by thread: Re: critical points of a third order polynomial fit (simplification)