Metadata-Version: 2.3
Name: nenucal
Version: 0.15
Summary: Calibration and data-management toolkit for NenuFAR observations
License: GPL-3.0-or-later
Keywords: radio astronomy,NenuFAR,calibration,interferometry
Author: Florent Mertens
Author-email: florent.mertens@gmail.com
Requires-Python: >=3.10,<4.0
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Topic :: Scientific/Engineering :: Astronomy
Provides-Extra: dev
Provides-Extra: docs
Requires-Dist: astropy (>=5.0)
Requires-Dist: astroquery (>=0.4)
Requires-Dist: click (>=8.0)
Requires-Dist: furo (>=2024.1) ; extra == "docs"
Requires-Dist: libpipe (>=0.2)
Requires-Dist: losoto (>=2.3)
Requires-Dist: lsmtool (>=1.4.2)
Requires-Dist: matplotlib (>=3.0)
Requires-Dist: myst-parser (>=3.0) ; extra == "docs"
Requires-Dist: nenupy (>=2.0)
Requires-Dist: pytest (>=8.0) ; extra == "dev"
Requires-Dist: pytest-cov (>=5.0) ; extra == "dev"
Requires-Dist: python-casacore (>=3.0)
Requires-Dist: requests (>=2.0)
Requires-Dist: scipy (>=1.8)
Requires-Dist: sphinx (>=7.0) ; extra == "docs"
Requires-Dist: sphinx-click (>=5.0) ; extra == "docs"
Requires-Dist: tables (>=3.2)
Requires-Dist: tabulate (>=0.8)
Requires-Dist: toml (>=0.10)
Requires-Dist: xarray (<2025)
Project-URL: Documentation, https://nenucal-cd.readthedocs.io
Project-URL: Homepage, https://gitlab.com/nenufar-cosmic-dawn/nenucal-cd
Project-URL: Issues, https://gitlab.com/nenufar-cosmic-dawn/nenucal-cd/-/issues
Project-URL: Repository, https://gitlab.com/nenufar-cosmic-dawn/nenucal-cd
Description-Content-Type: text/markdown

NenuCAL CD
==========

`nenucal` is a calibration and data-management toolkit for NenuFAR radio
observations. It takes raw or pre-processed NenuFAR MeasurementSets and produces
calibrated visibilities ready for imaging or power-spectrum analysis. It was
developed for the Cosmic Dawn project but is not specific to it — it can be used
for any NenuFAR imaging observation.

At its core it provides three things, each installed as a command-line tool:

- a **data management tool** (`nenudata`) to organise observations, spectral
  windows, and node layout, and to move data between processing stages;
- a **calibration pipeline** (`calpipe`), built on
  [DP3](https://dp3.readthedocs.io) and driven by TOML configuration files;
- a set of **utilities** for the supporting data products: gain solutions
  (`soltool`), sky models (`modeltool`), flagging (`flagtool`), MeasurementSets
  (`mstool`), and imaging (`imgpipe`).

Full documentation: https://nenucal-cd.readthedocs.io

Installation
------------

    $ pip install nenucal-cd

Requires Python ≥ 3.10; the Python dependencies are installed automatically.

Some functionality also relies on external tools that must be installed
separately:

- [DP3](https://dp3.readthedocs.io) — calibration and visibility processing
- [AOFlagger](https://aoflagger.readthedocs.io) — RFI flagging
- [WSClean](https://wsclean.readthedocs.io) — imaging

Usage
-----

See the [documentation](https://nenucal-cd.readthedocs.io) for guides on the
calibration pipeline, sky-model building, flagging, gain-solution handling, and
data management.

`nenucal` is designed to be composed into full pipelines. For the Cosmic Dawn
project it was used to build two general, reusable pipelines:

- [nenuprepipe](https://gitlab.com/nenufar-cosmic-dawn/nenuprepipe) — raw-data
  pre-processing into calibration-ready MeasurementSets;
- [nenuflow](https://gitlab.com/nenufar-cosmic-dawn/nenuflow) — the end-to-end
  calibration pipeline.

Contact
-------

Do not hesitate to file an
[issue](https://gitlab.com/nenufar-cosmic-dawn/nenucal-cd/-/issues) or contact
me if you encounter a problem with this package.

