Skip to content

Commit f372b2e

Browse files
authored
Merge pull request #365 from NNPDF/mucol_dis_with_powheg
Fix panic in `fx2`
2 parents a1614db + 0cd2bb1 commit f372b2e

4 files changed

Lines changed: 25 additions & 9 deletions

File tree

examples/cpp/get-subgrids.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -136,11 +136,11 @@ int main() {
136136

137137
// Check the values of the node entries.
138138
assert(node_values_index[0] == 5442.30542919352900); // PyAPI: `subgrid.node_values[0][16]`
139-
assert(node_values_index[1] == 0.03052158400782889); // PyAPI: `subgrid.node_values[1][20]`
140-
assert(node_values_index[2] == 0.03052158400782889); // PyAPI: `subgrid.node_values[2][20]`
139+
assert(node_values_index[1] == 0.03052158400782890); // PyAPI: `subgrid.node_values[1][20]`
140+
assert(node_values_index[2] == 0.03052158400782890); // PyAPI: `subgrid.node_values[2][20]`
141141

142142
// PyAPI: `grid.subgrid(0, 0, 0).to_array(subgrid.shape)[16][20][20]`
143-
assert(subgrid_array[index] == -4.936156925096015e-07);
143+
assert(subgrid_array[index] == -4.936156925096021e-07);
144144
}
145145
break;
146146
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Computing predictions with the same PDF: NNPDF31_nlo_as_0118_luxqed
2-
7.1330573367785985E-005 2.1399172010335785E-004
2+
7.1330573367785999E-005 2.1399172010335790E-004
33
Computing predictions with different PDFs and alphasQ2(NNPDF31_nlo_as_0118_luxqed):
4-
7.3091433321743418E-005 2.1927429996523019E-004
4+
7.3091433321743418E-005 2.1927429996523024E-004
55
Computing predictions with different PDFs and alphasQ2(MSHT20qed_nnlo):
66
7.3462246623863024E-005 2.2038673987158908E-004

pineappl/src/interpolation.rs

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ mod applgrid {
2222
for _ in 0..10 {
2323
let x = (-yp).exp();
2424
let delta = (1.0 - x).mul_add(-5.0, y - yp);
25-
if (delta.abs() < 1e-15) && (delta >= deltap) {
25+
if (delta == 0.0) || ((delta.abs() < 2e-15) && (delta.abs() >= deltap.abs())) {
2626
return x;
2727
}
2828
let deriv = x.mul_add(-5.0, -1.0);
@@ -754,4 +754,20 @@ mod tests {
754754
assert!(applgrid::fq20(applgrid::ftau0(q2)).ulps(&q2) < 4);
755755
}
756756
}
757+
758+
#[test]
759+
fn pr_365() {
760+
assert_approx_eq!(
761+
f64,
762+
applgrid::fx2(6.7865509745),
763+
0.1010727499933246,
764+
ulps = 4
765+
);
766+
assert_approx_eq!(
767+
f64,
768+
applgrid::fx2(6.786550974400577),
769+
0.10107275000000002,
770+
ulps = 4
771+
);
772+
}
757773
}

pineappl/tests/drell_yan_lo.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,7 @@ fn perform_grid_tests(
363363
let bins = grid.convolve(&mut convolution_cache, &[], &[], &[], &[(1.0, 1.0, 1.0)]);
364364

365365
for (result, reference) in bins.iter().zip(reference.iter()) {
366-
assert_approx_eq!(f64, *result, *reference, ulps = 4);
366+
assert_approx_eq!(f64, *result, *reference, ulps = 8);
367367
}
368368

369369
// TEST 5b: `convolve` with `ConvolutionCache::with_two`
@@ -397,8 +397,8 @@ fn perform_grid_tests(
397397

398398
for (&node_value1, &node_value2, &ref_value) in izip!(&node_values[1], &node_values[2], x_grid)
399399
{
400-
assert_approx_eq!(f64, node_value1, ref_value, ulps = 4);
401-
assert_approx_eq!(f64, node_value2, ref_value, ulps = 4);
400+
assert_approx_eq!(f64, node_value1, ref_value, ulps = 8);
401+
assert_approx_eq!(f64, node_value2, ref_value, ulps = 8);
402402
}
403403

404404
let bins = grid.convolve(&mut convolution_cache, &[], &[], &[], &[(1.0, 1.0, 1.0)]);

0 commit comments

Comments
 (0)