Disable NaN and Inf

dsimcha dsimcha at yahoo.com
Sat Feb 6 07:57:17 PST 2010


== Quote from Andrei Alexandrescu (SeeWebsiteForEmail at erdani.org)'s article
> Jonathan Crapuchettes wrote:
> > I would like to divide one array by another using the slice syntax so
> > that I can benefit from the vectorized operation, but I am running into
> > a problem. Some of the numbers is my denominator array are 0, producing
> > NaNs and Infs in the result.
> >
> > My question is: Is there a way to force 0/0 and x/0 to result in 0?
> >
> > Thank you,
> > JC
> I don't know of a way. You may want to try first running a loop
> replacing 0 with inf throughout the denominator array. Then run
> vectorized division; any non-inf divided by inf yields 0.
> Andrei

At this point it's probably useless to vectorize, though.  You may as well just
write something like:

if(isNaN(arr2[i])) {
    result[i] = 0;
} else {
    result[i] = arr1[i] / arr2[i];
}



More information about the Digitalmars-d mailing list