Main

bilby_pipe is a command line tools for taking user input (as command line arguments or an ini file) and creating DAG files for submitting bilby parameter estimation jobs. To get started, write an ini file config.ini and run

$ bilby_pipe config.ini

Instruction for how to submit the job are printed in a log message. You can also specify extra arguments from the command line, e.g.

$ bilby_pipe config.ini –submit

will build and submit the job.

Command line interface

The primary user-interface for this code is a command line tool bilby_pipe, for an overview of this see the user interface.

Main function

Functionally, the main command line tool is calling the function bilby_pipe.main.main(), which is transcribed here:

def main():
    """ Top-level interface for bilby_pipe """
    args, unknown_args = parse_args(sys.argv[1:], create_parser())
    inputs = MainInput(args, unknown_args)
    # Create a Directed Acyclic Graph (DAG) of the workflow
    Dag(inputs)

As you can see, there 3 steps. First the command line arguments are parsed, the args object stores the user inputs and any defaults (see Command line interface) while unknown_args is a list of any unknown arguments.

The logic of handling the user input (in the form of the args object) is handled by the Main Input object. Following this, the logic of generated a DAG given that user input is handled by the Dag object.

Main Input

class bilby_pipe.main.MainInput(args, unknown_args, perform_checks=True)[source]

An object to hold all the inputs to bilby_pipe

Dag

#.. autoclass:: bilby_pipe.job_creation.dag.Dag