Subject: exp function From: Nilesh Goel Date: 20 Jun, 2011 19:48:05 Message: 1 of 8 i s there a limit of exp(x) for which it will only give zero as answer. In one of my equation exp(-921) is multiplied by a large constant but the answer is zero. I observe exp(-921) returns zero so even multiply it with large no. will return zero. Is this a limitation of Matlab or there is any alternative to get the small values also. Thanks Nilesh Goel
 Subject: exp function From: Matt J Date: 20 Jun, 2011 19:53:02 Message: 2 of 8 "Nilesh Goel" wrote in message ... > i s there a limit of exp(x) for which it will only give zero as answer. > > In one of my equation exp(-921) is multiplied by a large constant but the answer is zero. I observe exp(-921) returns zero so even multiply it with large no. will return zero. > > Is this a limitation of Matlab or there is any alternative to get the small values also. Instead of implementing as N*exp(-921), perhaps implement as exp( log(N)-921 )
 Subject: exp function From: Nilesh Goel Date: 20 Jun, 2011 20:44:05 Message: 3 of 8 Hello Matt, The problem is still there as now value of (log(N) - 921) is very less again so exponent of this gives zero o/p. :( "Matt J" wrote in message ... > "Nilesh Goel" wrote in message ... > > i s there a limit of exp(x) for which it will only give zero as answer. > > > > In one of my equation exp(-921) is multiplied by a large constant but the answer is zero. I observe exp(-921) returns zero so even multiply it with large no. will return zero. > > > > Is this a limitation of Matlab or there is any alternative to get the small values also. > > > Instead of implementing as N*exp(-921), perhaps implement as > > exp( log(N)-921 )
 Subject: exp function From: Matt J Date: 20 Jun, 2011 20:56:04 Message: 4 of 8 "Nilesh Goel" wrote in message ... > Hello Matt, > > The problem is still there as now value of (log(N) - 921) is very less again so exponent of this gives zero o/p. :( ================== Then you need to reformulate your calculations so that they can be accomplished within the precision capabilities of normal computers. Show a bigger chunk of what you are trying to do and maybe the community will have suggestions.
 Subject: exp function From: Roger Stafford Date: 20 Jun, 2011 21:02:04 Message: 5 of 8 "Nilesh Goel" wrote in message ... > The problem is still there as now value of (log(N) - 921) is very less again so exponent of this gives zero o/p. :( > > > > In one of my equation exp(-921) is multiplied by a large constant but the answer is zero. I observe exp(-921) returns zero so even multiply it with large no. will return zero. - - - - - - - -   You should remember that the very smallest positive number possible in 'double' format is 2^(-1075). Your number exp(-921) is far below that and is forced to round to zero. There is no avoiding that. You should adjust your proceedings accordingly. Roger Stafford
 Subject: exp function From: Greg Heath Date: 21 Jun, 2011 01:05:38 Message: 6 of 8 On Jun 20, 5:02 pm, "Roger Stafford" wrote: > "Nilesh Goel" wrote in message ... > > The problem is still there  as now value of (log(N) - 921)  is very less again so exponent of this gives zero o/p. :( > > > > > In one of my equation exp(-921) is multiplied by a large constant but the answer is zero. I observe exp(-921) returns zero so even multiply it with large no. will return zero. > > - - - - - - - - >   You should remember that the very smallest positive number possible in 'double' format is 2^(-1075).  Your number exp(-921) is far below that and is forced to round to zero.  There is no avoiding that.  You should adjust your proceedings accordingly. > > Roger Stafford For integer arguments I'm getting 2^(-1074) <= 2^(n) <= 2^(1023) and exp(-745) <= exp(m) <= exp(709) Hope this helps. Greg
 Subject: exp function From: Roger Stafford Date: 21 Jun, 2011 02:38:05 Message: 7 of 8 Greg Heath wrote in message <43d85ca6-5b2e-4af4-ad1b-f0b1411c220d@y30g2000yqb.googlegroups.com>... > For integer arguments I'm getting > 2^(-1074) <= 2^(n) <= 2^(1023) - - - - - - - - -   Yes you are right, Greg. The smallest positive double is the denormalized number 2^(-1074), making a nonzero exp(-921) even more impossible. Roger Stafford
 Subject: exp function From: Rune Allnor Date: 21 Jun, 2011 10:06:43 Message: 8 of 8 On Jun 20, 9:48 pm, "Nilesh Goel" wrote: > i s there a limit of exp(x) for which it will only give zero as answer. > > In one of my equation exp(-921) is multiplied by a large constant but the answer is zero. I observe exp(-921) returns zero so even multiply it with large no. will return zero. > > Is this a limitation of Matlab No. It's a limitation of finite wordlength aritmetics. > or there is any alternative to get the small values also. There might be. But if you routinely mess with numbers of that kind of magnitudes, you might want to review the scope of your work. Rune

### Everyone's Tags:

Separated by commas
Ex.: root locus, bode

### What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.