diff --git a/src/algorithms/tracking/libs/CMakeLists.txt b/src/algorithms/tracking/libs/CMakeLists.txt index 24e6e73ca..65dda2ca4 100644 --- a/src/algorithms/tracking/libs/CMakeLists.txt +++ b/src/algorithms/tracking/libs/CMakeLists.txt @@ -78,7 +78,7 @@ else() add_library(tracking_libs ${TRACKING_LIB_SOURCES} ${TRACKING_LIB_HEADERS}) endif() -target_link_libraries(tracking_libs + target_link_libraries(tracking_libs PUBLIC Armadillo::armadillo Boost::headers @@ -89,6 +89,7 @@ target_link_libraries(tracking_libs PRIVATE gnss_sdr_flags Glog::glog + Gnuradio::runtime ) if(ENABLE_CUDA) diff --git a/src/algorithms/tracking/libs/tracking_discriminators.cc b/src/algorithms/tracking/libs/tracking_discriminators.cc index 39917c3a0..cc9a38c98 100644 --- a/src/algorithms/tracking/libs/tracking_discriminators.cc +++ b/src/algorithms/tracking/libs/tracking_discriminators.cc @@ -20,6 +20,7 @@ #include "tracking_discriminators.h" #include "MATH_CONSTANTS.h" +#include // All the outputs are in RADIANS @@ -53,7 +54,7 @@ double fll_four_quadrant_atan(gr_complex prompt_s1, gr_complex prompt_s2, double { const float dot = prompt_s1.real() * prompt_s2.real() + prompt_s1.imag() * prompt_s2.imag(); const float cross = prompt_s1.real() * prompt_s2.imag() - prompt_s2.real() * prompt_s1.imag(); - return std::atan2(cross, dot) / (t2 - t1); + return static_cast(gr::fast_atan2f(cross, dot) / (t2 - t1)); } @@ -84,7 +85,7 @@ double fll_diff_atan(gr_complex prompt_s1, gr_complex prompt_s2, double t1, doub */ double pll_four_quadrant_atan(gr_complex prompt_s1) { - return static_cast(std::atan2(prompt_s1.imag(), prompt_s1.real())); + return static_cast(gr::fast_atan2f(prompt_s1.imag(), prompt_s1.real())); }