Radio interferometric simulations package for the ARGOS radio telescope.
Project description
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]
Launch the GUI with:
python app/argosim-gui.py
📚 Documentation
Comprehensive documentation is available at:
📖 Tutorials
Four interactive Jupyter notebooks are provided to help you get started:
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
blackandisort - 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.0},
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file argosim-1.0.0.tar.gz.
File metadata
- Download URL: argosim-1.0.0.tar.gz
- Upload date:
- Size: 29.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dc15d3a667a1c892210f30850dbaecc809d84ecf6f151c986d5e0b5a961686f1
|
|
| MD5 |
5548c29b6c26ed655759405f1fb58752
|
|
| BLAKE2b-256 |
594a429139f83c072638f42e927c51d100e38fac26ce992b05692d2457cbe41a
|
File details
Details for the file argosim-1.0.0-py3-none-any.whl.
File metadata
- Download URL: argosim-1.0.0-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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ebf1913dfa3ef2cab36301e5f51ad6facd3315af4e98057f9244b3835e34bbfa
|
|
| MD5 |
0591099532d0b1df2e1b1178a10158db
|
|
| BLAKE2b-256 |
d7f645f2a15a5ccdcdee1980969ca1d9f7996d65a37c7f589ad8620e29c1163b
|