[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: How do I prevent underflow errors?
- Subject: Re: How do I prevent underflow errors?
- From: Craig Markwardt <craigmnet(at)astrog.physics.wisc.edu>
- Date: 17 Feb 1999 00:08:01 -0600
- Newsgroups: comp.lang.idl-pvwave
- Organization: U. Wisc. Madison Physics -- Compact Objects
- References: <36CA3B68.7C086E1B@earthling.net>
- Reply-To: craigmnet(at)astrog.physics.wisc.edu
- Xref: news.doit.wisc.edu comp.lang.idl-pvwave:13653
Phillip & Suzanne David <pdavid@earthling.net> writes:
>
> I have a large array of data that I'd like to plot with the contour routine.
> However, the dynamic range of the data is very large, with values as large as
> 1e36 and as small as 1e-40. I noticed that contour accepts float data, not
> double data. This data is outside the range of float data, so it needs to be
> scaled for the contour routine. I don't really care to differentiate the
> 1e-40 from 0, but would like to be able to handle values up to the 1e36. I
> was going to scale the data by the largest value (i.e.,
> PlotData=Float(Data/Max(Abs(Data)))). This puts the data in the range of -1.0
> to 1.0. This should be fine for Contour, but I get an underflow error when
> converting from double data to float data. I understand that the data will
> come out with a 0 instead of 1e-76, and don't really care. How do I get IDL
> to ignore the underflow and just convert the value?
>
> Phillip
>
Greetings,
Try the following with check_math(), which is documented in IDL.
dummy = check_math(1, 1)
.... commands with math errors are placed here ...
dummy = check_math(0, 0)
Most of your messages will go away (except for maybe the last one).
Craig
--
--------------------------------------------------------------------------
Craig B. Markwardt, Ph.D. EMAIL: craigmnet@astrog.physics.wisc.edu
Astrophysics, IDL, Finance, Derivatives | Remove "net" for better response
--------------------------------------------------------------------------