2 ms·
> Unless you are working with small numbers? Suppose you are dividing 1e-30 by 1e-30 than the result should still be 1 so if you return 0 when the second argume
by exDM69 11y ago
> Unless you are working with small numbers? Suppose you are dividing 1e-30 by 1e-30 than the result should still be 1 so if you return 0 when the second argument is < 1e-6 then you're screwed.
A very good point which I didn't think of! Obviously the 1e-6 figure is specific to the application.
How should one avoid division by zero then? You can't figure out the relative error without a division, can you? For normal comparisons, using a relative error is the way to go but the zero case is different.
On the other hand, using quantities of magnitudes in 1e-30 is already using half the exponent, a change of units may be due here.
- stinos 11y agoHow should one avoid division by zero then? Good question and in this case I really can't tell, it depends on the problem domain (i.e. is your normal data set numbers greater than 1 or rather smaller then 1e-100) and I'm not sure if is possible (in a feasible way) to write one generic function which works for all cases.