@@ -6,10 +6,12 @@ program lhapdf_example
66
77 integer , parameter :: dp = kind (0.0d0 )
88
9- type (pineappl_grid) :: grid
10- type (pineappl_channels) :: channels
11- type (pineappl_kinematics) :: kinematics(3 )
12- type (pineappl_interp_tuples) :: interpolations(3 )
9+ type (pineappl_grid) :: grid
10+ type (pineappl_channels) :: channels
11+ type (pineappl_kinematics) :: kinematics(3 )
12+ type (pineappl_scale_func_form) :: mu_scales_form(3 )
13+ type (pineappl_interp) :: interp_info(3 )
14+ type (pineappl_conv) :: convolutions(2 )
1315
1416 type (pineappl_xfx) :: xfx
1517 type (pineappl_alphas) :: alphas
@@ -25,8 +27,8 @@ program lhapdf_example
2527 integer (c_int), target :: pdfs_array(2 ,2 )
2628 character (len= 30 ) :: pdfset1, pdfset2
2729
28- channels = pineappl_channels_new()
29- call pineappl_channels_add(channels, 3 , 2 , [0 , 0 , 1 , - 1 , 2 , - 2 ], [1.0_dp , 1.0_dp , 1.0_dp ])
30+ channels = pineappl_channels_new(2 ) ! The argument is the number of convolutions
31+ call pineappl_channels_add(channels, 3 , [0 , 0 , 1 , - 1 , 2 , - 2 ], [1.0_dp , 1.0_dp , 1.0_dp ])
3032
3133 kinematics = [&
3234 pineappl_kinematics(pineappl_scale, 0 ), &
@@ -39,14 +41,26 @@ program lhapdf_example
3941 q2_mapping = pineappl_applgrid_h0
4042 x_mapping = pineappl_applgrid_f2
4143 interpolation_meth = pineappl_lagrange
42- interpolations = [ &
43- pineappl_interp_tuples (1e2_dp , 1e8_dp , 40 , 3 , q2_reweight, q2_mapping, interpolation_meth), &
44- pineappl_interp_tuples (2e-7_dp , 1.0_dp , 50 , 3 , x_reweight, x_mapping, interpolation_meth), &
45- pineappl_interp_tuples (2e-7_dp , 1.0_dp , 50 , 3 , x_reweight, x_mapping, interpolation_meth) &
44+ interp_info = [ &
45+ pineappl_interp (1e2_dp , 1e8_dp , 40 , 3 , q2_reweight, q2_mapping, interpolation_meth), &
46+ pineappl_interp (2e-7_dp , 1.0_dp , 50 , 3 , x_reweight, x_mapping, interpolation_meth), &
47+ pineappl_interp (2e-7_dp , 1.0_dp , 50 , 3 , x_reweight, x_mapping, interpolation_meth) &
4648 ]
4749
48- grid = pineappl_grid_new2(pineappl_pdg, channels, 1 , [2_1 , 0_1 , 0_1 , 0_1 , 0_1 ], 2 , &
49- [0.0_dp , 1.0_dp , 2.0_dp ], 2 , [pineappl_unpol_pdf, pineappl_unpol_pdf], [2212 , 2212 ], kinematics, interpolations, [1 , 1 , 0 ])
50+ ! The `pineappl_scale_func_form_body` objects have to defined with two fields - if not required, the value(s) will be ignored
51+ mu_scales_form = [ &
52+ pineappl_scale_func_form(PINEAPPL_SCALE_FUNC_FORM_SCALE, pineappl_scale_func_form_body(0 , 0 )), &
53+ pineappl_scale_func_form(PINEAPPL_SCALE_FUNC_FORM_SCALE, pineappl_scale_func_form_body(0 , 0 )), &
54+ pineappl_scale_func_form(PINEAPPL_SCALE_FUNC_FORM_NO_SCALE, pineappl_scale_func_form_body(0 , 0 )) &
55+ ]
56+
57+ convolutions = [ &
58+ pineappl_conv(pineappl_unpol_pdf, 2212 ), &
59+ pineappl_conv(pineappl_unpol_pdf, 2212 ) &
60+ ]
61+
62+ grid = pineappl_grid_new2(2 , [0.0_dp , 1.0_dp , 2.0_dp ], 1 , [2_1 , 0_1 , 0_1 , 0_1 , 0_1 ], channels, pineappl_pdg, &
63+ convolutions, 3 , interp_info, kinematics, mu_scales_form)
5064
5165 call pineappl_grid_fill_all2(grid, 0 , 0.5_dp , [100.0_dp , 0.5_dp , 0.5_dp ], [0.5_dp , 0.5_dp , 0.5_dp ])
5266 call pineappl_grid_fill_all2(grid, 0 , 1.5_dp , [100.0_dp , 0.5_dp , 0.5_dp ], [1.5_dp , 1.5_dp , 1.5_dp ])
0 commit comments