Parameter Files

Runtime Options

A section called [runtime] must be present in the parameter file. It has one mandatory parameter, sampler, and one optional one, root.

The sampler parameter must be one of the CosmoSIS samplers. It determines how the parameter space is explored.

The root parameter changes how paths to modules in the parameter file are looked for. All paths are defined relative to the root.

The verbosity setting can be used to control how much output is printed to the screen. It can either be set to a number from 0 to 50, where 50 is the noisiest and 0 is silent, or to one of the following strings:

debug 40 - extra information on proposals will be printed for some samplers
noisy = 35 - extra information will be printed about pipeline stage progress
standard = 30 - likelihood will be printed for every evaluated parameter set
quiet = 20 - likelihoods will not be printed but general progress will
muted 10 - no general progress will be printed
silent -1 - nothing will be printed during sampling

For example:

[runtime]
sampler = metropolis
; This is the default value of root:
root = .
verbosity = quiet

Sampler Options

The specific sampler that you chose in the [runtime] section must also be configured in a section.

Different samplers have different options - some mandatory and some which take a default value if you don’t set them. The pages for the individual samplers describe what parameter they can take. For example, the emcee sampler might take these parameters:

[emcee]
walkers = 64
samples = 400
nsteps = 100

Output Options

All the samplers except the test sampler generate output chain files. You can choose where this should go and what format it should have in the output section. The only mandatory parameter is filename:

[output]
filename = my_output_chain.txt
; the default format is "text".  It can also be set to "fits", but we don't recommend that.
format = text

Pipeline Options

The mandatory pipeline section defines the pipeline that you want to run to generate a likelihood.

It must have these parameters:

[pipeline]
modules = consistency camb jla riess11
values = demos/values5.ini
likelihoods = jla riess
debug=F
timing=F
extra_output = cosmological_parameters/Yhe

The modules parameter must contain a sequence of the modules that make up the pipeline. Each module is a single collection of code that performs a piece of the calculation. See also the overview section for more information on the concept modules, the list of CosmoSIS standard modules, and details on how to make your own modules. The names used in this option can be absolutely anything, as long as there is a correspondingly named section somewhere else in the file (see Module Options below).

The values parameter must point to the values file, which defines what parameters are put in to the start of the pipeline. The path is relative to the current working directory, not to the parameter file.

The likelihoods parameter defines which likelihoods are extracted from the pipeline. After running the pipeline CosmoSIS looks in the data block for parameters called X_LIKE for each X in the list given here. If this parameter is not set then all available likelihoods are used.

The debug parameter can be set to “T” to print out more detailed debugging output if the pipeline fails. It will print out the complete list of all things written to and read from the pipeline.

The timing parameter can be set to “T” to print out how long each stage in the pipeline takes to configure and run.

The extra_output parameter can be used to save derived parameters in the output chain. Set it to a sequence of strings each of the form section/name, and after the pipeline is run each these will be extracted from the output as a new column.

Module Options

Every entry found in the modules option in the pipeline section (see above) must have a section with the same name in the parameter file.

That section must have at least one mandatory parameter in it, file:

[pipeline]
; We must include two sections below with these names:
modules = my_theory_module   my_likelihood_module

[my_theory_module]
file = modules/path/to/theory/filename.so

[my_likelihood_module]
file = modules/path/to/likelihood/filename.py

The file option must be the path to either a shared library (.so) or a python (.py) file. The paths that you need for CosmoSIS standard library modules are described in the reference section for them. See the documentation on making modules for more information on creating your own new modules.

In addition to this mandatory parameter, you can also specify other options in the file. These options can be read in the setup phase of the module:

[my_likelihood_module]
file = modules/path/to/likelihood/filename.py
data_file = some_path_to_a_data_file.dat
xxx = 1