diff options
author | Marcus Müller <Marcus.Mueller@ettus.com> | 2015-07-07 16:46:30 +0200 |
---|---|---|
committer | Marcus Müller <Marcus.Mueller@ettus.com> | 2015-07-07 16:46:30 +0200 |
commit | 9ae9a10cadec5c1ea7c03677cc685b3a92591967 (patch) | |
tree | 584977b48e316826dafadbaa12e5417d98df8558 | |
parent | 1185d401caf8f420b93754398675d012f08ef68f (diff) |
frequency_modulator_fc: float modulo using cmath
-rw-r--r-- | gr-analog/lib/frequency_modulator_fc_impl.cc | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/gr-analog/lib/frequency_modulator_fc_impl.cc b/gr-analog/lib/frequency_modulator_fc_impl.cc index 1158167756..812eb8bf0b 100644 --- a/gr-analog/lib/frequency_modulator_fc_impl.cc +++ b/gr-analog/lib/frequency_modulator_fc_impl.cc @@ -27,8 +27,7 @@ #include "frequency_modulator_fc_impl.h" #include <gnuradio/io_signature.h> #include <gnuradio/fxpt.h> -#include <math.h> -#include <boost/math/special_functions/trunc.hpp> +#include <cmath> namespace gr { namespace analog { @@ -63,10 +62,9 @@ namespace gr { for(int i = 0; i < noutput_items; i++) { d_phase = d_phase + d_sensitivity * in[i]; - while(d_phase > (float)(M_PI)) - d_phase -= (float)(2.0 * M_PI); - while(d_phase < (float)(-M_PI)) - d_phase += (float)(2.0 * M_PI); + //place phase in [-pi, +pi[ + #define F_PI ((float)(M_PI)) + d_phase = std::fmod(d_phase + F_PI, 2.0f * F_PI) - F_PI; float oi, oq; |