@@ -37,26 +37,38 @@ inline double inv_Phi_impl(double p) {
37
37
= {1.2199838032983212 , 4.8914137334471356 , 7.5865960847956080 ,
38
38
9.5274618535358388 , 10.734698580862359 , 11.116406781896242 ,
39
39
10.417226196842595 , 7.8276718012189362 };
40
- static constexpr double log_b[8 ]
41
- = {0 ., 3.7451021830139207 , 6.5326064640478618 , 8.5930788436817044 ,
42
- 9.9624069236663077 , 10.579180688621286 , 10.265665328832871 ,
43
- 8.5614962136628454 };
40
+ static constexpr double log_b[8 ] = {0 .,
41
+ 3.7451021830139207 ,
42
+ 6.5326064640478618 ,
43
+ 8.5930788436817044 ,
44
+ 9.9624069236663077 ,
45
+ 10.579180688621286 ,
46
+ 10.265665328832871 ,
47
+ 8.5614962136628454 };
44
48
static constexpr double log_c[8 ]
45
49
= {0.3530744474482423 , 1.5326298343683388 , 1.7525849400614634 ,
46
50
1.2941374937060454 , 0.2393776640901312 , -1.419724057885092 ,
47
51
-3.784340465764968 , -7.163234779359426 };
48
- static constexpr double log_d[8 ]
49
- = {0.0 , 0.71939547349472054982 , 0.51663958798453168964 ,
50
- -0.37140093392784434556 , -1.9098407084572139869 , -4.186547581055928724 ,
51
- -7.5099767712254150709 , -20.673761573859248841 };
52
+ static constexpr double log_d[8 ] = {0.0 ,
53
+ 0.71939547349472054982 ,
54
+ 0.51663958798453168964 ,
55
+ -0.37140093392784434556 ,
56
+ -1.9098407084572139869 ,
57
+ -4.186547581055928724 ,
58
+ -7.5099767712254150709 ,
59
+ -20.673761573859248841 };
52
60
static constexpr double log_e[8 ]
53
61
= {1.8958048169567149 , 1.6981417567726154 , 0.5793212339927351 ,
54
62
-1.215503791936417 , -3.629396584023968 , -6.690500273261249 ,
55
63
-10.51540298415323 , -15.41979457491781 };
56
- static constexpr double log_f[8 ]
57
- = {0 ., -0.511105318617135 , -1.988286302259815 , -4.208049039384857 ,
58
- -7.147448611626374 , -10.89973190740069 , -15.76637472711685 ,
59
- -33.82373901099482 };
64
+ static constexpr double log_f[8 ] = {0 .,
65
+ -0.511105318617135 ,
66
+ -1.988286302259815 ,
67
+ -4.208049039384857 ,
68
+ -7.147448611626374 ,
69
+ -10.89973190740069 ,
70
+ -15.76637472711685 ,
71
+ -33.82373901099482 };
60
72
61
73
double log_p = LogP ? p : log (p);
62
74
@@ -102,12 +114,12 @@ inline double inv_Phi_impl(double p) {
102
114
// even when on the log space. We can mitigate this by scaling the
103
115
// exponentiated result (dividing by 10), since the same scaling is applied
104
116
// to the numerator and denominator.
105
- Eigen::VectorXd log_r_pow = Eigen::ArrayXd::LinSpaced ( 8 , 0 , 7 ) * log_inner_r
106
- - LOG_TEN;
117
+ Eigen::VectorXd log_r_pow
118
+ = Eigen::ArrayXd::LinSpaced ( 8 , 0 , 7 ) * log_inner_r - LOG_TEN;
107
119
Eigen::Map<const Eigen::VectorXd> num_map (num_ptr, 8 );
108
120
Eigen::Map<const Eigen::VectorXd> den_map (den_ptr, 8 );
109
- double log_result = log_sum_exp (log_r_pow + num_map)
110
- - log_sum_exp (log_r_pow + den_map);
121
+ double log_result
122
+ = log_sum_exp (log_r_pow + num_map) - log_sum_exp (log_r_pow + den_map);
111
123
return log_q_sign * exp (log_pre_mult + log_result);
112
124
}
113
125
} // namespace internal
0 commit comments