[workflow-inference] ; The inference configuration file(s) and any overrides to use for all of the ; injections. ; If no injection file is provided on the command line, injections will be ; drawn from the prior specified in the inference config file config-files = bbh-uniform_comoving_volume.ini marginalized_phase.ini dynesty.ini data.ini ; As with events sections in the standard workflow, you can specify ; config-overrides for the above file(s). Here, we will change the prior from ; uniform in comoving volume to uniform in the log10 of the comoving volume. ; We'll do this so as to get a distribution of injections with appreciable ; SNR. (A uniform in comoving volume prior leads to most of the injections ; having SNR < 7, and so we mostly end up seeing prior-in, prior-out.) config-overrides = prior-comoving_volume:name:uniform_log10 ; Optionally, you may also specify the number of times to run inference on ; each injection by setting nruns. Each run will use different random seeds, ; and samples from the runs will be combined into a single posterior file for ; each injection. Not setting this is equivalent to nruns = 1 ;nruns = 1 ; For the injection workflow, we need to add an executable to create the ; injections. Optionally, we may also add executables to perform ; percentile-percentile (pp) tests. [executables] create_injections = ${which:pycbc_create_injections} ; Executables for percentile-percentile test. These are optional. If you do ; not include them in this section, no PP test will be done. If you do ; include them, all 3 must be included. pp_table_summary = ${which:pycbc_inference_pp_table_summary} plot_pp = ${which:pycbc_inference_plot_pp} inj_recovery = ${which:pycbc_inference_plot_inj_recovery} ; We do not need to provide any of the other executables since they are ; specified in workflow_config.ini. When this file is combined with ; workflow_config.ini, these options are automatically added to the ; [executables] section in that file. [workflow-pp_test] ; Since we have included the executables to make the PP plots, we need to ; provide this section. ; The pp-params option specifies what parameters to perform the percentile- ; percentile test on. If you do not provide anything, all parameters ; in the posterior file will be used (that is set by the parameters ; argument in the [extract_posterior] section in workflow_config.ini). A ; p-value of p-values will be calculated for all parameters and reported ; in the summary table on the Percentile-Percentile table of the results ; page. We therefore do not want to include all parameters in the posterior ; file, since we have added parameters that are derived from the others in ; [extract_posterior] section. For this reason, we manually list all the ; parameters we want to do the pp test on here: pp-params = delta_tc srcmass1 srcmass2 spin1_a spin1_azimuthal spin1_polar spin2_a spin2_azimuthal spin2_polar distance inclination polarization ra dec ; In order to do the PP test, the code needs to know what parameters in the ; posterior correspond to which injection parameters. Since we have applied ; some functions to the samples parameters when creating the posterior file ; (again, refer to the [extract_posterior] section in workflow_config.ini), ; the mapping between posterior parameters and injection parameters is no ; longer a 1:1. To tell the code how to map from the injections parameters ; the posterior parameters, we provide the following injection-samples-map. ; We can just copy most of the parameters argument from the [extract_posterior] ; section for this (we can't just do a reference because the wildcard (*) that ; is there is not understood by the injection-samples-map option. injection-samples-map = 'primary_mass(srcmass1, srcmass2):srcmass1' 'secondary_mass(srcmass1, srcmass2):srcmass2' 'primary_spin(srcmass1, srcmass2, spin1_a, spin2_a):spin1_a' 'primary_spin(srcmass1, srcmass2, spin1_azimuthal, spin2_azimuthal):spin1_azimuthal' 'primary_spin(srcmass1, srcmass2, spin1_polar, spin2_polar):spin1_polar' 'secondary_spin(srcmass1, srcmass2, spin1_a, spin2_a):spin2_a' 'secondary_spin(srcmass1, srcmass2, spin1_azimuthal, spin2_azimuthal):spin2_azimuthal' 'secondary_spin(srcmass1, srcmass2, spin1_polar, spin2_polar):spin2_polar' 'mchirp_from_mass1_mass2(srcmass1, srcmass2):srcmchirp' 'chi_eff_from_spherical(srcmass1, srcmass2, spin1_a, spin1_polar, spin2_a, spin2_polar):chi_eff' 'chi_p_from_spherical(srcmass1, srcmass2, spin1_a, spin1_azimuthal, spin1_polar, spin2_a, spin2_azimuthal, spin2_polar):chi_p' 'redshift_from_comoving_volume(comoving_volume):redshift' 'distance_from_comoving_volume(comoving_volume):distance' ; Notice that we can provide more parameters to the injection-samples-map then ; what we will be using in the PP test. This is fine, extra parameters are ; just ignored. By providing all of the parameters here, we can re-use this ; argument for the posterior plots (see below). [create_injections] ; Options for the create_injections executable. Do not provide a config file ; nor the number of injections to create here. The inference ; config file is used for generating injections, and the number is determined ; by the command-line options given to make_inference_inj_workflow [plot_posterior_summary] ; Adding plot-injection-parameters will cause a red line to be plotted on ; the posterior plots showing the injection parameters. plot-injection-parameters = ; In order for the redline to be plotted in the right place, we have to ; provide an injection samples map. We can just use what was used in the ; workflow-pp_test section. injection-samples-map = ${workflow-pp_test|injection-samples-map} ; We do not need to provide any arguments, as the rest are set in ; workflow_config.ini. [plot_posterior] ; Do the same for the full corner plots. plot-injection-parameters = injection-samples-map = ${workflow-pp_test|injection-samples-map} ; We do not need to provide any arguments, as the rest are set in ; workflow_config.ini. [pp_table_summary] ; command line options for percentile-percentile table summary ; do not provide parameters or injection-samples map here, as that is read ; from the [workflow-pp_test] section [plot_pp] ; command line options for percentile-percentile plot ; do not provide parameters or injection-samples map here, as that is read ; from the [workflow-pp_test] section [inj_recovery] ; command line options for injection recovery plots ; do not provide parameters or injection-samples map here, as that is read ; from the [workflow-pp_test] section