Main

This module provides the code for the top-level interface for bilby_pipe executable.

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