Skip to main content

Containerized Automated Radio Astronomy Calibration

Project description

CARACal

CARACal stands for Containerized Automated Radio Astronomy Calibration and is a pipeline for radio interferometry data reduction

Main website: caracal.rtfd.io

It includes the Install & Run instructions described below, and much more.

Installation & Run

Usage and publication policy

When using CARACal please be aware of and adhere to the CARACal publication policy.

Requirements

  • Python 3.8 or higher.

  • Container technology of your choice. It can be one of the following:
    • Docker

    • Singularity 3.5 - 3.9 (nearly all functionality available for > 2.6.0-dist, see here for further information)
      • Apptainer does not support all CARACal functionalities (at the moment).

Installation

We strongly recommend and describe an installation using a Python3 virtual environment. Only try outside a virtual environment if you know what you are doing. Any name as ${name} occurring in the description below can be chosen arbitrarily. If it symbolises directories or files, those directories or files should exist and the user should have write access.

There are three (3) available methods to install the caracal pipeline:

1. Manual

Choose the name of the virtual environment ${caracal-venv}. Then:

$ python3 -m venv ${caracal-venv}

OR, if the command above does not work

virtualenv -p python3 ${caracal-venv}
source ${caracal-venv}/bin/activate
pip install -U pip setuptools wheel

For a CARACal stable release run:

pip install -U caracal

CARACal has a few optional dependencies (scipy, astropy, regions, astroquery) which are not installed by default. But to get full functionality, you can install them by running:

pip install -U caracal[all]

And CARACal developer version which is not recommended for users:

pip install -U 'caracal[all] @ git+https://github.com/caracal-pipeline/caracal.git@master'

Ignore any error messages concerning `pyregion`.

2. caratekit.sh script

Download the installation script caratekit.sh . Choose the parent directory ${workspace} and the name of the CARACal directory ${caracal_dir}. Any name as ${name} occurring in the description below can be chosen arbitrarily. If it symbolises directories or files, those directories or files should exist and the user should have write acccess.

If using Docker:

caratekit.sh -ws ${workspace} -cr -di -ct ${caracal_dir} -rp install -f -kh

If using Singularity:

caratekit.sh -ws ${workspace} -cr -si -ct ${caracal_testdir} -rp install -f -kh

3. Poetry (For developers)

Installation from source using poetry. First, install poetry:

pip install poetry

In the working directory where source is checked out run poetry install or to include all optional dependencies:

poetry install --extras all

Installation on (ILIFU) slurm environment

The installation of CARACal on ilifu has been tried and tested on the Ubuntu 20.0 operating system, although, it should also work on other OS versions. On the login node, follow these instructions:

cd /path/to/working/area
module add python/3.9.4
python3 -m venv <venv-name>
source <venv-name>/bin/activate
pip install -U pip setuptools wheel
git clone https://github.com/caracal-pipeline/caracal.git
pip install -U -e caracal
deactivate

where /path/to/working/area is the actual path to the directory where you wish to install CARACal. In principle, this can also be done in the Slurm environment of ILIFU by submitting an sbatch script. Please amend your pip install command with [all] option when needed in accordance with the instructions above. Install the latest release with:

pip install -U caracal

NB: The stimela singularity images needed for CARACal are stored in this location: /software/astro/caracal/ where you can access the latest version of the images, for example, /software/astro/caracal/STIMELA_IMAGES_1.7.0.

Running

If you installed CARACal manually, activate the virtual environment with:

source ${caracal-venv}/bin/activate

If you installed CARACal with the caratekit.sh script, activate the virtual environment with:

source ${workspace}/${caracal_dir}/caracal_venv/bin/activate

If using Docker run CARACal with:

caracal -c ${your-configuration-file}

If using Singularity run CARACal with:

caracal -ct singularity -c ${your-configuration-file}

For more detailed installation instructions, troubleshooting tips and a full user manual please see caracal.readthedocs.io.

New issues

We encourage users who experience problems installing or running CARACal to check for known issues or open a new issue at our GitHub issues page.

When opening a new issue, please include your:
  1. installation type (e.g., Docker, Singularity)

  2. software version (both CARACal and Stimela)

  3. CARACal configuration file

  4. CARACal log files.

In case you are not carrying out a fresh installation, remove earlier Stimela images with:

stimela clean -ac

Then, if using Docker:

stimela pull

If using Singularity, choose a pull folder ${singularity_pull_folder}, where the Singularity images are stored and define an environment variable by adding this in the rc file of your shell (e.g. .bashrc):

export SINGULARITY_PULLFOLDER=${WORKSPACE_ROOT}/singularity_images

and run:

stimela pull -s

If using Podman:

stimela pull -p

License

This project is licensed under the GNU General Public License v2.0 - see license for details.

Contribute

Contributions are always welcome! Please ensure that you adhere to our coding standards pep8.

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

caracal-1.1.3rc5.tar.gz (58.1 MB view details)

Uploaded Source

Built Distribution

caracal-1.1.3rc5-py3-none-any.whl (58.1 MB view details)

Uploaded Python 3

File details

Details for the file caracal-1.1.3rc5.tar.gz.

File metadata

  • Download URL: caracal-1.1.3rc5.tar.gz
  • Upload date:
  • Size: 58.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.10.12 Linux/5.15.0-91-generic

File hashes

Hashes for caracal-1.1.3rc5.tar.gz
Algorithm Hash digest
SHA256 f0b02a4c73d61efc0df798756c6b68f77aec39d880475a4e4e5b2f6bc0d181af
MD5 719878c02b9ddbd8fd8d0bd7ee771d0c
BLAKE2b-256 39b7b466a8a2fb1dcc2e8f90d348c92cc4207c2a046302789372ad431bc11b5b

See more details on using hashes here.

File details

Details for the file caracal-1.1.3rc5-py3-none-any.whl.

File metadata

  • Download URL: caracal-1.1.3rc5-py3-none-any.whl
  • Upload date:
  • Size: 58.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.10.12 Linux/5.15.0-91-generic

File hashes

Hashes for caracal-1.1.3rc5-py3-none-any.whl
Algorithm Hash digest
SHA256 e4b3e649e32d0fd35b870f33a00ddf4ff4408022c53fab4cc7a0d8ef698c2ea7
MD5 2e5fb84454f1c6b3b22165b468bf42da
BLAKE2b-256 f8d30c9c63c07fce46ceced06cb94b85c6e547483f2fc1e797ba1a14d67bdeec

See more details on using hashes here.

Supported by

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