@@ -94,42 +94,42 @@ void EIHPerturbation::CalculateAccelerations(Model *model, int thread_id, int nu
94
94
95
95
// PN 2.0
96
96
Real inv_r_ab2 = 1.0 / r_ab2; // computing inverse and reusing it
97
- temp = -14.25 * a.mass * a.mass * inv_r_ab2; // 57/4
98
- temp -= 34.5 * a.mass * b.mass * inv_r_ab2; // 69/2
99
- temp -= 9.0 * b.mass * b.mass * inv_r_ab2; // 9
100
- temp -= 1.875 * quarted_v_b_dot_n_ab; // 16/8
97
+ temp = -14.25 * a.mass * a.mass * inv_r_ab2; // - 57/4
98
+ temp -= 34.5 * a.mass * b.mass * inv_r_ab2; // - 69/2
99
+ temp -= 9.0 * b.mass * b.mass * inv_r_ab2; // - 9
100
+ temp -= 1.875 * quarted_v_b_dot_n_ab; // - 16/8
101
101
temp += 1.5 * square_v_b_dot_n_ab * v_a_dot_v_a; // 3/2
102
- temp -= 6.0 * square_v_b_dot_v_b * v_a_dot_v_b; // 6
103
- temp -= 2.0 * square_v_a_dot_v_b; // 2
102
+ temp -= 6.0 * square_v_b_dot_v_b * v_a_dot_v_b; // - 6
103
+ temp -= 2.0 * square_v_a_dot_v_b; // - 2
104
104
temp += 4.5 * square_v_b_dot_n_ab * v_b_dot_n_ab; // 9/2
105
105
temp += 4.0 * v_a_dot_v_b * v_b_dot_v_b; // 4
106
- temp -= 2.0 * v_b_dot_v_b; // 2
106
+ temp -= 2.0 * v_b_dot_v_b; // - 2
107
107
// Compute longer terms with new dummy variable
108
108
Real temp2 = 19.5 * square_v_a_dot_n_ab; // 39/2
109
- temp2 -= 39.0 * v_a_dot_n_ab * v_b_dot_n_ab; // 39
109
+ temp2 -= 39.0 * v_a_dot_n_ab * v_b_dot_n_ab; // - 39
110
110
temp2 += 8.5 * square_v_b_dot_n_ab; // 17/2
111
- temp2 -= 3.75 * v_a_dot_v_a; // 15/4
111
+ temp2 -= 3.75 * v_a_dot_v_a; // - 15/4
112
112
temp2 += 2.5 * v_a_dot_v_b; // 5/2
113
113
temp2 += 1.25 * v_b_dot_v_b; // 5/4
114
114
temp += a.mass / r_ab * temp2;
115
115
// Next long term
116
116
temp2 = 2.0 * square_v_a_dot_n_ab; // 2
117
- temp2 -= 4.0 * v_a_dot_n_ab * v_b_dot_n_ab; // 4
118
- temp2 -= 6.0 * square_v_b_dot_n_ab; // 6
119
- temp2 -= 8.0 * v_a_dot_v_b; // 8
117
+ temp2 -= 4.0 * v_a_dot_n_ab * v_b_dot_n_ab; // - 4
118
+ temp2 -= 6.0 * square_v_b_dot_n_ab; // - 6
119
+ temp2 -= 8.0 * v_a_dot_v_b; // - 8
120
120
temp2 += 4.0 * v_b_dot_v_b; // 4
121
121
temp += b.mass / r_ab * temp2;
122
122
// Add the 2.0 PN contributions in n_ab
123
123
a.acc_pert += c4_recipr * n_ab * (m_b_over_r_ab2 * temp);
124
124
// Compute the v_ab contributions
125
- temp = m_b_over_r_ab * (-2.0 * v_a_dot_n_ab - 2.0 * v_b_dot_n_ab); // 2, 2
125
+ temp = m_b_over_r_ab * (-2.0 * v_a_dot_n_ab - 2.0 * v_b_dot_n_ab); // - 2, - 2
126
126
temp += m_a_over_r_ab * (-15.75 * v_a_dot_n_ab + 13.75 * v_b_dot_n_ab); // -63/4, 55/4
127
127
temp += 6.0 * v_a_dot_n_ab * square_v_b_dot_n_ab; // 6
128
128
temp += 4.5 * cubed_v_b_dot_n_ab; // 9/2
129
129
temp += v_b_dot_n_ab * v_a_dot_v_a; // 1
130
130
temp -= 4.0 * v_a_dot_n_ab * v_a_dot_v_b; // -4
131
- temp += 4.0 * v_b_dot_n_ab * v_a_dot_v_b; // + 4
132
- temp += 4.0 * v_a_dot_n_ab * v_b_dot_v_b; // + 4
131
+ temp += 4.0 * v_b_dot_n_ab * v_a_dot_v_b; // 4
132
+ temp += 4.0 * v_a_dot_n_ab * v_b_dot_v_b; // 4
133
133
temp -= 5.0 * v_b_dot_n_ab * v_b_dot_v_b; // -5
134
134
a.acc_pert += c4_recipr * v_ab * (m_b_over_r_ab2 * temp);
135
135
@@ -139,12 +139,12 @@ void EIHPerturbation::CalculateAccelerations(Model *model, int thread_id, int nu
139
139
Real v_ab_dot_v_ab = v_ab.SquaredNorm ();
140
140
// Compute the n_ab terms for PN 2.5
141
141
temp = 52.0 / 3.0 * b.mass / r_ab * v_ab_dot_n_ab; // 52/3
142
- temp -= 6.0 * a.mass / r_ab * v_ab_dot_n_ab; // 6
142
+ temp -= 6.0 * a.mass / r_ab * v_ab_dot_n_ab; // - 6
143
143
temp += 3.0 * (v_ab_dot_n_ab)*v_ab_dot_v_ab; // 3
144
144
a.acc_pert += c5_recipr * n_ab * (0.8 * m_a_m_b_over_r_ab3 * temp);
145
145
temp = 2.0 * a.mass / r_ab; // 2
146
- temp -= 8.0 * b.mass / r_ab; // 8
147
- temp -= v_ab_dot_v_ab; // 1
146
+ temp -= 8.0 * b.mass / r_ab; // - 8
147
+ temp -= v_ab_dot_v_ab; // - 1
148
148
a.acc_pert += c5_recipr * v_ab * (0.8 * m_a_m_b_over_r_ab3 * temp);
149
149
}
150
150
}
@@ -216,21 +216,21 @@ Real EIHPerturbation::GetEnergy(Model *model)
216
216
energy += c2_recipr * energypart * a.mass ;
217
217
// 2PN terms
218
218
energypart = -0.5 * m_a_over_r_ab * m_a_over_r_ab; // 1/2
219
- energypart -= 2.375 * m_a_over_r_ab * m_b_over_r_ab; // 9/8
219
+ energypart -= 2.375 * m_a_over_r_ab * m_b_over_r_ab; // - 9/8
220
220
energypart += 0.375 * cubed_v_a_dot_n_ab * v_b_dot_n_ab; // 3/8
221
221
energypart += 0.1875 * square_v_a_dot_n_ab * square_v_b_dot_n_ab; // 3/16
222
- energypart -= 1.125 * v_a_dot_n_ab * v_b_dot_n_ab * v_a_dot_v_a; // 9/8
223
- energypart -= 1.625 * square_v_b_dot_n_ab * v_a_dot_v_a; // 13/8
222
+ energypart -= 1.125 * v_a_dot_n_ab * v_b_dot_n_ab * v_a_dot_v_a; // - 9/8
223
+ energypart -= 1.625 * square_v_b_dot_n_ab * v_a_dot_v_a; // - 13/8
224
224
energypart += 2.625 * square_v_a_dot_v_a; // 21/8
225
225
energypart += 1.625 * square_v_a_dot_n_ab * v_a_dot_v_b; // 13/8
226
226
energypart += 0.75 * v_a_dot_n_ab * v_b_dot_n_ab * v_a_dot_v_b; // 3/4
227
- energypart -= 6.875 * v_a_dot_v_a * v_a_dot_v_b; // 55/8
227
+ energypart -= 6.875 * v_a_dot_v_a * v_a_dot_v_b; // - 55/8
228
228
energypart += 2.125 * v_a_dot_v_b * v_a_dot_v_b; // 17/8
229
229
energypart += 1.9375 * v_a_dot_v_a * v_b_dot_v_b; // 31/16
230
230
energytemp = 7.25 * square_v_a_dot_n_ab; // 29/4
231
- energytemp -= 3.25 * v_a_dot_n_ab * v_b_dot_n_ab; // 13/4
231
+ energytemp -= 3.25 * v_a_dot_n_ab * v_b_dot_n_ab; // - 13/4
232
232
energytemp += 0.5 * square_v_b_dot_n_ab; // 1/2
233
- energytemp -= 1.5 * v_a_dot_v_a; // 3/2
233
+ energytemp -= 1.5 * v_a_dot_v_a; // - 3/2
234
234
energytemp += 1.75 * v_b_dot_v_b; // 7/4
235
235
energypart += energytemp * m_a_over_r_ab;
236
236
energy += a.mass * c4_recipr * energypart * m_b_over_r_ab;
0 commit comments