MCPcopy Create free account
hub / github.com/PX4/eigen / test_numtraits

Function test_numtraits

test/half_float.cpp:97–117  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

95}
96
97void test_numtraits()
98{
99 std::cout << "epsilon = " << NumTraits<half>::epsilon() << " (0x" << std::hex << NumTraits<half>::epsilon().x << ")" << std::endl;
100 std::cout << "highest = " << NumTraits<half>::highest() << " (0x" << std::hex << NumTraits<half>::highest().x << ")" << std::endl;
101 std::cout << "lowest = " << NumTraits<half>::lowest() << " (0x" << std::hex << NumTraits<half>::lowest().x << ")" << std::endl;
102 std::cout << "min = " << (std::numeric_limits<half>::min)() << " (0x" << std::hex << half((std::numeric_limits<half>::min)()).x << ")" << std::endl;
103 std::cout << "denorm min = " << (std::numeric_limits<half>::denorm_min)() << " (0x" << std::hex << half((std::numeric_limits<half>::denorm_min)()).x << ")" << std::endl;
104 std::cout << "infinity = " << NumTraits<half>::infinity() << " (0x" << std::hex << NumTraits<half>::infinity().x << ")" << std::endl;
105 std::cout << "quiet nan = " << NumTraits<half>::quiet_NaN() << " (0x" << std::hex << NumTraits<half>::quiet_NaN().x << ")" << std::endl;
106 std::cout << "signaling nan = " << std::numeric_limits<half>::signaling_NaN() << " (0x" << std::hex << std::numeric_limits<half>::signaling_NaN().x << ")" << std::endl;
107
108 VERIFY(NumTraits<half>::IsSigned);
109
110 VERIFY_IS_EQUAL( std::numeric_limits<half>::infinity().x, half(std::numeric_limits<float>::infinity()).x );
111 VERIFY_IS_EQUAL( std::numeric_limits<half>::quiet_NaN().x, half(std::numeric_limits<float>::quiet_NaN()).x );
112 VERIFY_IS_EQUAL( std::numeric_limits<half>::signaling_NaN().x, half(std::numeric_limits<float>::signaling_NaN()).x );
113 VERIFY( (std::numeric_limits<half>::min)() > half(0.f) );
114 VERIFY( (std::numeric_limits<half>::denorm_min)() > half(0.f) );
115 VERIFY( (std::numeric_limits<half>::min)()/half(2) > half(0.f) );
116 VERIFY_IS_EQUAL( (std::numeric_limits<half>::denorm_min)()/half(2), half(0.f) );
117}
118
119void test_arithmetic()
120{

Callers 1

test_half_floatFunction · 0.85

Calls 1

halfClass · 0.70

Tested by

no test coverage detected