       Re: managing order of magnitude instead of numbers

• To: mathgroup at smc.vnet.net
• Subject: [mg56819] Re: managing order of magnitude instead of numbers
• From: Paul Abbott <paul at physics.uwa.edu.au>
• Date: Sat, 7 May 2005 04:16:31 -0400 (EDT)
• Organization: The University of Western Australia
• References: <d57gvv\$p8a\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```In article <d57gvv\$p8a\$1 at smc.vnet.net>,
foice <foice@N0NSPAMMAR&tiscali.it> wrote:

> i need to make calculation without specifing the exact values of my
> parameters, i want only to specify their order of magnitude.
> obviously i need only order of magnitudes as result.
>
> now the problem is that
>
> O(1) - O(1) = O(1)
>
> while
>
> 1-1 = 0
>
> so it's clear i cannot use numbers to make this "order of magintude
> calculation"

One comment here: Mathematica does know something about objects of this
type. For example, enter

O[x] - O[x]

and see what happens.

Generally, I think you can use Series to do such calculations most
efficiently.

> at the present stage i let mathematica do the calculation in a fully
> simbolic way and then, by hand calculation, i get my result by
> susbstitution of the order of magnitudes in place of the symobls used.
>
> making a very simple example:
>
> i ask to mathematica to do
>
> a - b
>
> and then i substitute
>
> a=O(1)
>
> b=O(0.002)
>
> and calculate
>
> a - b = O(1)
>
> in this way i'm  making operation between magnitues not values, but i
> have to do it on my own, while doing calculation with mathematica will
> be much better.
>
> is there any way to make calculation betwwen order of magnitues

Perhaps you could use Interval arithmetic? For example, defining

o[x_] := Interval[x {0.9,1.1}]

to be an order of magnitude interval, then

o - o[0.002]

returns an interval. We can use the following to check the magnitude:

oCheck[int_,n_] := IntervalIntersection[int, o[n]] =!= Interval[]

For example,

oCheck[o - o[0.002], 1]

yields True, whereas

oCheck[o - o[0.002],0.1]

and

oCheck[o - o[0.002], 10]

do not.

Cheers,
Paul

--
Paul Abbott                                      Phone: +61 8 6488 2734
School of Physics, M013                            Fax: +61 8 6488 1014
The University of Western Australia         (CRICOS Provider No 00126G)
AUSTRALIA                               http://physics.uwa.edu.au/~paul
http://InternationalMathematicaSymposium.org/IMS2005/

```

• Prev by Date: Re: letrec/named let
• Next by Date: Re: letrec/named let
• Previous by thread: Re: managing order of magnitude instead of numbers