Skip to main content

A convenience tool that orchestrates the parallel generation of FITS cubes from a continuum-subtracted ms file.

Project description

multi_cube

    |=====================================================================|
    |                    _  _    _                      _                 |
    |  _ __ ___   _   _ | || |_ (_)         ___  _   _ | |__    ___       |
    | | '_ ` _ \ | | | || || __|| | _____  / __|| | | || '_ \  / _ \      |
    | | | | | | || |_| || || |_ | ||_____|| (__ | |_| || |_) ||  __/      |
    | |_| |_| |_| \__,_||_| \__||_|        \___| \__,_||_.__/  \___|      |
    |                                                                     |
    |                                                                     |
    |=====================================================================|

A convenience tool that orchestrates the parallel generation of FITS cubes from a continuum subtracted ms file.

Requirements

This tool is designed to leverage Slurm Workload Manager for efficient job scheduling, allowing for simultaneous submission of multiple jobs. Development and testing were conducted using Python 3.12.1 on the ILIFU research cloud infrastructure, hosted by IDIA. To ensure proper environment setup, dependencies are listed in requirements.txt."

Installation

Setting up an environment

It is recommended to use a virtual environment to ensure isolation and proper dependency management when installing and running multi_cube. To set up the environment:

python3 -m venv .venv
source .venv/bin/activate

This will create and activate a virtual environment in your current directory.

Installing from PyPI

Once your environment is set up, you can install multi_cube directly from PyPI:

pip install multi-cube

This will install the latest version of the package along with its dependencies.

Installing from Source

If you’d like to work with the source code directly, clone the repository and install it locally. First, clone the repository into your desired directory:

cd <desired_directory>
git clone https://<yourtoken>@github.com/LeonMtshweni/multi_cube.git
cd multi_cube/

Usage


multi_cube is a tool designed to generate FITS cubes from a continuum-subtracted measurement set. Below are the steps to configure and run the tool.

1. Generate a Default Configuration File

To get started, you need to generate a default configuration file. This file contains all the necessary parameters and paths that multi_cube uses during execution. Run the following command to generate the config file in your current working directory:

multi_cube –get-config

This will create a file named multi_cube_config.yml in the current directory. The configuration file contains several parameters, including paths, imaging options, and Slurm resource allocation settings.

2. Customize the Configuration File

Once the configuration file is generated, you need to customise it according to your data and computing environment. Open the multi_cube_config.yml file in a text editor and modify the following key parameters:

  • Paths: Set the correct paths to your MS files, output directories, and any containers (e.g., WSClean or CASA).
  • WSClean Settings: Customize WSClean parameters such as pixel scale, image size, data column, and the number of channels to image.
  • Slurm Settings: Set the required Slurm resource allocation, including ntasks, cpus, mem, and job partition.

Make sure you have a calibrated, continuum-subtracted MS file before proceeding.

3. Run the Workflow

After configuring the settings, run the workflow by executing the multi_cube tool from the command line. The tool will split your MS file into user-defined bandwidth segments, image each segment, and then stack the images to create a data cube.

multi_cube –config multi_cube_config.yml

This command will:

  • Split the MS file into smaller chunks.
  • Image each chunk using WSClean or CASA.
  • Stack the resulting images into a single FITS cube.

4. Monitor the Workflow

The tool is designed to leverage the Slurm workload manager for efficient job scheduling. You can monitor the jobs using standard Slurm commands, such as:

squeue -u <your_username>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

multi_cube-0.5.2.tar.gz (13.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

multi_cube-0.5.2-py3-none-any.whl (14.8 kB view details)

Uploaded Python 3

File details

Details for the file multi_cube-0.5.2.tar.gz.

File metadata

  • Download URL: multi_cube-0.5.2.tar.gz
  • Upload date:
  • Size: 13.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.1

File hashes

Hashes for multi_cube-0.5.2.tar.gz
Algorithm Hash digest
SHA256 e4de92422f406c6681c8546f85a064204e2872187d0f93d4adce918668905200
MD5 dda5740b7b1a281095de3dd3e5c0340f
BLAKE2b-256 384f99da95c93e09b2440f3b7e14e76848cf97c7d10b722a49c6bf7c04057915

See more details on using hashes here.

File details

Details for the file multi_cube-0.5.2-py3-none-any.whl.

File metadata

  • Download URL: multi_cube-0.5.2-py3-none-any.whl
  • Upload date:
  • Size: 14.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.1

File hashes

Hashes for multi_cube-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2baa1d41f0358b3677c546166e5f6f6ebe069228045676a41f868f700f8392b9
MD5 4c409cdb032dd45bcf50224f7b1ec5fa
BLAKE2b-256 26a51fb3d438967d962fe1b826825b0285e49c491c7bfbf6dc5957e3bfa8d842

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page