Skip to content

io_manager

I/O and file management utilities for the argus package.

setup_output_directory

setup_output_directory(config, use_gw, timestamp=None, config_path=None)

Set up output directory for the inference run.

Parameters:

  • config

    Configuration object

  • use_gw (bool) –

    Whether to include gravitational wave model

  • timestamp (str, default: None ) –

    Optional timestamp to use for output directory

  • config_path (str, default: None ) –

    Optional path to the configuration file to determine workflow directory

Returns

str: output_dir path

copy_config_file

copy_config_file(config_path, output_dir, logger)

Copy configuration file to output directory.

Parameters:

  • config_path (str) –

    Path to the configuration file

  • output_dir (str) –

    Output directory path

  • logger

    Logger object

Returns

str: Path to copied config file

save_numpyro_results

save_numpyro_results(inf_data, output_dir, output_id, logger)

Save NumPyro/ArviZ results.

Parameters:

  • inf_data

    ArviZ InferenceData object

  • output_dir

    Output directory path

  • output_id

    Output identifier for naming

  • logger

    Logger object

Returns

str: Path to saved results file

setup_single_logger

setup_single_logger(config, output_dir=None, enable_file_logging=True)

Set up a single, properly configured logger for the entire application.

This function creates a centralized logger that eliminates duplicate messages and provides consistent logging throughout the application. It supports both console and file logging.

Parameters:

  • config

    Configuration object

  • output_dir (str, default: None ) –

    Directory for log files. Required if enable_file_logging=True

  • enable_file_logging (bool, default: True ) –

    Whether to enable file logging. Default True.

Returns

logging.Logger: Configured logger instance for the entire application

Raises

ValueError: If enable_file_logging=True but output_dir is None

get_argus_logger

get_argus_logger()

Get the centralized argus logger.

This function provides consistent access to the main application logger throughout the codebase. The logger should be initialized first using setup_single_logger().

Returns

logging.Logger: The centralized argus logger

Raises

RuntimeError: If the logger hasn't been initialized with setup_single_logger()

setup_console_logging

setup_console_logging(config)

Set up console-only logging.

DEPRECATED: Use setup_single_logger() instead for centralized logging. This function is kept for backward compatibility.

Parameters:

  • config

    Configuration object

Returns

logging.Logger: Configured logger instance

get_output_id_from_config

get_output_id_from_config(config, timestamp=None)

Extract output_id from config with fallback to timestamp.

Parameters:

  • config

    Configuration object

  • timestamp (str, default: None ) –

    Optional timestamp to use as fallback

Returns

str: Output identifier