|
4 | 4 | #include <test/unit/math/rev/util.hpp>
|
5 | 5 |
|
6 | 6 | TEST(log_sum_exp_tests, large_values) {
|
7 |
| - using stan::math::var; |
| 7 | + using stan::math::var; |
8 | 8 |
|
9 |
| - var a = 1e50; |
10 |
| - var output = stan::math::log_sum_exp(a, a); |
11 |
| - output.grad(); |
12 |
| - EXPECT_FLOAT_EQ(output.val(), log(2.0) + value_of(a)); |
13 |
| - EXPECT_FLOAT_EQ(a.adj(), 1.0); |
| 9 | + var a = 1e50; |
| 10 | + var output = stan::math::log_sum_exp(a, a); |
| 11 | + output.grad(); |
| 12 | + EXPECT_FLOAT_EQ(output.val(), log(2.0) + value_of(a)); |
| 13 | + EXPECT_FLOAT_EQ(a.adj(), 1.0); |
14 | 14 |
|
15 |
| - var a1 = 1e50; |
16 |
| - var a2 = 1; |
17 |
| - var output2 = stan::math::log_sum_exp(a1, a2); |
18 |
| - output2.grad(); |
19 |
| - EXPECT_FLOAT_EQ(a1.adj(), 1.0); |
20 |
| - EXPECT_FLOAT_EQ(a2.adj(), 0.0); |
| 15 | + var a1 = 1e50; |
| 16 | + var a2 = 1; |
| 17 | + var output2 = stan::math::log_sum_exp(a1, a2); |
| 18 | + output2.grad(); |
| 19 | + EXPECT_FLOAT_EQ(a1.adj(), 1.0); |
| 20 | + EXPECT_FLOAT_EQ(a2.adj(), 0.0); |
21 | 21 |
|
22 |
| - var a3 = 1; |
23 |
| - var a4 = 1e50; |
24 |
| - var output3 = stan::math::log_sum_exp(a3, a4); |
25 |
| - output3.grad(); |
26 |
| - EXPECT_FLOAT_EQ(a3.adj(), 0.0); |
27 |
| - EXPECT_FLOAT_EQ(a4.adj(), 1.0); |
| 22 | + var a3 = 1; |
| 23 | + var a4 = 1e50; |
| 24 | + var output3 = stan::math::log_sum_exp(a3, a4); |
| 25 | + output3.grad(); |
| 26 | + EXPECT_FLOAT_EQ(a3.adj(), 0.0); |
| 27 | + EXPECT_FLOAT_EQ(a4.adj(), 1.0); |
28 | 28 | }
|
0 commit comments