Skip to main content

Radio interferometric simulations package for the ARGOS radio telescope.

Project description

CI docs pypi License

Argosim

argosim is a lightweight, modular, and open-source Python package for simulating radio interferometric observations. It is developed as part of the ARGOS project, a European initiative to build a next-generation, sustainable radio interferometer.

✨ Key Features

  • 📡 Antenna array simulation – Generate custom arrays or load predefined layouts.
  • 🔭 Aperture synthesis – Compute baseline distributions and uv-sampling masks.
  • 🌀 Sky model generation – Create or load input sky models.
  • 🧼 Dirty beam and image reconstruction – Simulate dirty observations and reconstruct images using CLEAN.
  • 📊 Beam and image quality metrics – Evaluate beam shape, sidelobe level, and image fidelity.
  • ⚡ JAX backend – Accelerated, differentiable computations for high-performance and ML applications.
  • 🐳 Docker support – Easy reproducibility and cross-platform compatibility.

🚀 Getting Started

Installation

You can install the latest version of argosim via pip:

pip install argosim

Or use the development version directly from GitHub:

git clone https://github.com/ARGOS-telescope/argosim.git
cd argosim
pip install -e .

Dependencies

  • Python 3.11+
  • NumPy, Matplotlib, JAX, scikit-image
  • PyQt6 (optional, for running the GUI)

🖥️ Graphical User Interface (GUI)

argosim provides an optional PyQt6-based GUI for interactive simulations. It supports array configuration, uv-coverage visualization, and imaging—all without writing code.

Ideal for education, outreach, and rapid prototyping.

Running the GUI requires PyQt6 which can be installed as follows:

pip install "argosim[gui]"

To launch the GUI and have access to the custom templates you need to clone the argosim repository:

git clone https://github.com/ARGOS-telescope/argosim.git
cd argosim

Launch the GUI with:

python app/argosim-gui.py

📚 Documentation

Comprehensive documentation is available at:

https://argos-telescope.github.io/argosim/

📖 Tutorials

Four interactive Jupyter notebooks are provided to help you get started:

  1. Antenna Array Simulation
  2. Aperture Synthesis
  3. Image reconstruction
  4. CLEAN deconvolution

These notebooks cover the main functionalities of argosim and provide practical examples.

🐳 Docker

A pre-built Docker image is available:

docker pull ghcr.io/argos-telescope/argosim:main

This ensures reproducibility and simplifies setup across different environments.

🛠️ Development

We use continuous integration to maintain code quality and robustness:

  • Unit tests with pytest
  • Linting with black and isort
  • Documentation building with sphinx

📢 Citation

If you use argosim in your research, please cite it as follows:

@software{argosim,
  author = {Ezequiel Centofanti and Emma Ayçoberry and Samuel Farrens and Samuel Gullin and Manal Bensahli and Jean-Luc Starck and John Antoniadis},
  title = {argosim: a Python package for radio interferometric simulations},
  version = {1.0.1},
  year = {2025},
  url = {https://github.com/ARGOS-telescope/argosim}
}

fill in the version number with the current version of argosim.

This software is developed at the CosmoStat laboratory, CEA, Paris-Saclay, in collaboration with the ARGOS project.

📬 Contact

For questions, bugs, or feature requests, feel free to open an issue.

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

argosim-1.0.1.tar.gz (29.3 kB view details)

Uploaded Source

Built Distribution

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

argosim-1.0.1-py3-none-any.whl (31.9 kB view details)

Uploaded Python 3

File details

Details for the file argosim-1.0.1.tar.gz.

File metadata

  • Download URL: argosim-1.0.1.tar.gz
  • Upload date:
  • Size: 29.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for argosim-1.0.1.tar.gz
Algorithm Hash digest
SHA256 293d20c16a1d9c4b101a1a4a0932070c0b6a89daf38702f0909918b49ac8e537
MD5 604b1342ea40d535401fd4ea5b1ef7ee
BLAKE2b-256 0418ca5bb32728b42d244d79dc575a0335aa3c78a4c20147f0cd154413e32046

See more details on using hashes here.

File details

Details for the file argosim-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: argosim-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 31.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for argosim-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a20285564f901bc72664da8200af7a56ab099c063104e237fae9c2f0af429951
MD5 e48c9acfc66ed10e9e367a92ed6b1f07
BLAKE2b-256 da90786f959252f8fd9c322029eb23b505a993105f4f62a8db7d800cd7646c51

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