35 #include <gtest/gtest.h> 39 for (
int time_const = 20; time_const < 100; time_const += 20)
42 ASSERT_LT(std::abs(lpf.
get()), 1e-6);
46 for (
int i = 0; i < time_const; ++i)
51 ASSERT_TRUE(ret == lpf.
get());
52 ASSERT_LT(std::abs(ret - (1.0 - expf(-1.0))), 1e-2);
54 for (
int i = time_const; i < time_const * 100; ++i)
59 ASSERT_TRUE(ret == lpf.
get());
60 ASSERT_LT(std::abs(ret - 1.0), 1e-2);
64 ASSERT_LT(std::abs(lpf.
get() - 1.0), 1e-2);
66 ASSERT_LT(std::abs(lpf.
get() - 1.0), 1e-2);
72 for (
int time_const = 20; time_const < 100; time_const += 20)
78 for (
int i = 0; i < time_const * 10; ++i)
85 ASSERT_LT(std::abs(ret_l + ret_h - 1.0), 1e-2);
92 for (
float zero = 0.0; zero < M_PI * 2 * 4; zero += M_PI * 2)
95 const float start1 = zero + 0.5;
96 const float end1 = zero + M_PI * 2.0 - 0.5;
100 ASSERT_LT(std::abs(lpf.
get() - start1), 1e-6);
101 ASSERT_LT(std::abs(lpf_angle.
get() - start1), 1e-6);
103 for (
int i = 0; i < 100; ++i)
107 ASSERT_GT(lpf.
get(), start1);
108 ASSERT_LT(lpf_angle.
get(), start1);
110 ASSERT_LT(std::abs(lpf.
get() - end1), 1e-2);
111 ASSERT_LT(std::abs(lpf_angle.
get() - (zero - 0.5)), 1e-2);
114 const float start2 = zero - 0.5;
115 const float end2 = zero - M_PI * 2.0 + 0.5;
118 lpf_angle.
set(start2);
119 ASSERT_LT(std::abs(lpf.
get() - start2), 1e-6);
120 ASSERT_LT(std::abs(lpf_angle.
get() - start2), 1e-6);
122 for (
int i = 0; i < 100; ++i)
126 ASSERT_LT(lpf.
get(), start2);
127 ASSERT_GT(lpf_angle.
get(), start2);
129 ASSERT_LT(std::abs(lpf.
get() - end2), 1e-2);
130 ASSERT_LT(std::abs(lpf_angle.
get() - (zero + 0.5)), 1e-2);
134 int main(
int argc,
char** argv)
136 testing::InitGoogleTest(&argc, argv);
138 return RUN_ALL_TESTS();
void set(const float &out0)
TEST(Filter, LPFCharacteristic)
int main(int argc, char **argv)