[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

*Subject*: Re: summation problem*From*: Paul van Delst <paul.vandelst(at)noaa.gov>*Date*: Thu, 05 Apr 2001 11:00:28 -0400*Newsgroups*: comp.lang.idl-pvwave*Organization*: CIMSS @ NOAA/NCEP*References*: <9ahj10$8sg$1@yarrow.open.ac.uk> <3ACC53E1.A396D87C@fz-juelich.de>*Xref*: news.doit.wisc.edu comp.lang.idl-pvwave:24394

Jaco van Gorkom wrote: > > Manish wrote: > ... > > I have a program which produces an array of values of sunlight flux during > > the day. Unfortunately, it produces crazy numbers before the sunrises and > > after it sets(as expected). I'm summing the values throughout the day to > > get a total integrated day flux, but here's the problem - is there a way of > > telling the TOTAL function to ignore negative numbers and NaN numbers? > > Yes, there is a way: > IDL> test = [0,-1,3,4,] > IDL> print, total(test>0,/nan) > 7.00000 > % Program caused arithmetic error: Floating illegal operand > > The 'illegal operand' error appears to be harmless, caused by comparing test>0: > IDL> print, test>0 > 0.00000 0.00000 3.00000 4.00000 NaN > % Program caused arithmetic error: Floating illegal operand Harmless maybe, but I for one don't like seeing illegal operand errors, let alone ignoring them. What if you add some code that tries to take the log of a -ve number, see the same error and shrug it off? Why not do a loc_finite = WHERE( FINITE( test ) EQ 1, count_finite ) IF ( count_finite GT 0 ) THEN $ sum = TOTAL( test[ loc_finite ] > 0.0 ) $ ELSE $ sum = !VALUES.F_NAN ; Or some other suitable flag ?? IDL> print, sum 7.00000 Oh, and make sure you set !EXCEPT = 2 in your idl setup file. That'll learn ya to remove errors from your code :o) paulv -- Paul van Delst A little learning is a dangerous thing; CIMSS @ NOAA/NCEP Drink deep, or taste not the Pierian spring; Ph: (301)763-8000 x7274 There shallow draughts intoxicate the brain, Fax:(301)763-8545 And drinking largely sobers us again. paul.vandelst@noaa.gov Alexander Pope.

**Follow-Ups**:**Re: summation problem***From:*Jaco van Gorkom

**References**:**summation problem***From:*Manish

**Re: summation problem***From:*Jaco van Gorkom

- Prev by Date:
**Re: Header File *.h?** - Next by Date:
**Re: Object epiphany: A new way of building widget applications** - Prev by thread:
**Re: summation problem** - Next by thread:
**Re: summation problem** - Index(es):