hi,
in a number of cyclone classes I need to wrap signal values in order to keep them inside of some range. There are several ways to do that. I tried calling fmod(), truncating via (int) cast, and directly masking of the exponent ala 'tabfudge' from d_osc.c.
Currently, in the testing phase, the three methods are the three modes of the 'phasewrap' class.
Generally, the 'tabfudge' method gives a huge performance boost, but I wonder if there is any common knowledge regarding hidden dangers of this algo, like its behaviour with denormal input, etc? Is there any way to handle input values greater than 2^19?
I would be very grateful for any pointers, also concerning fmod()-to-cast comparison.
Krzysztof