Commit a1d74e0a authored by Francesco Amadori's avatar Francesco Amadori
Browse files

Prepare v1.0.0 release for Zenodo

- Add CITATION.cff and .zenodo.json (DOI 10.5281/zenodo.22943605)
- pyproject: version 1.0.0, license GPL-3.0-or-later (was MIT classifier),
  project URLs on git.ia2.inaf.it, declare pyyaml and pymupdf dependencies
- README: DOI badge, public clone URL, citation and third-party code sections
- .gitattributes: exclude IDE/tooling folders from git archive

Co-Authored-By: default avatarClaude Opus 5.5 <noreply@anthropic.com>
parent 4f027b1e
Loading
Loading
Loading
Loading

.gitattributes

0 → 100644
+7 −0
Changes for .gitattributes: 7 added lines, 0 removed lines.
Original line number Diff line number Diff line
# Excluded from `git archive` (release zip for Zenodo)
.gitattributes export-ignore
.gitignore     export-ignore
.idea/         export-ignore
.claude/       export-ignore
.pytest_cache/ export-ignore
data_out/      export-ignore

.zenodo.json

0 → 100644
+59 −0
Changes for .zenodo.json: 59 added lines, 0 removed lines.
Original line number Diff line number Diff line
{
  "upload_type": "software",
  "title": "DataReductionGIANOB",
  "version": "1.0.0",
  "publication_date": "2026-09-24",
  "doi": "10.5281/zenodo.22943605",
  "description": "<p><strong>DataReductionGIANOB</strong> is a Python graphical tool for the reduction of high-resolution near-infrared spectra obtained with the GIANO-B spectrograph at the Telescopio Nazionale Galileo (TNG).</p><p>It drives the GOFIO data reduction software and adds the post-processing steps needed for high-resolution spectroscopy of exoplanet atmospheres: night and A/B nodding separation, pixel alignment of the spectra, automatic wavelength calibration against a telluric transmission model, spectral order selection and barycentric correction. Instrument set-ups are described by YAML files; configurations for GIANO-B, CRIRES+, ESPRESSO and HARPS-N are included.</p>",
  "creators": [
    {
      "name": "Amadori, Francesco",
      "affiliation": "INAF - Osservatorio Astrofisico di Torino",
      "orcid": "0000-0003-1316-1033"
    },
    {
      "name": "Giacobbe, Paolo",
      "affiliation": "INAF - Osservatorio Astrofisico di Torino",
      "orcid": "0000-0001-7034-7024"
    }
  ],
  "license": "GPL-3.0-or-later",
  "access_right": "open",
  "language": "eng",
  "keywords": [
    "astronomy",
    "high-resolution spectroscopy",
    "near-infrared spectroscopy",
    "GIANO-B",
    "TNG",
    "data reduction",
    "exoplanet atmospheres",
    "Python"
  ],
  "related_identifiers": [
    {
      "identifier": "https://git.ia2.inaf.it/guibrushr/datareductiongianob",
      "relation": "isSupplementTo",
      "resource_type": "software",
      "scheme": "url"
    },
    {
      "identifier": "10.1117/12.2312130",
      "relation": "requires",
      "resource_type": "publication-conferencepaper",
      "scheme": "doi"
    },
    {
      "identifier": "10.3847/2515-5172/aaa4b7",
      "relation": "requires",
      "resource_type": "publication-article",
      "scheme": "doi"
    }
  ],
  "references": [
    "Wright, J. T., & Eastman, J. D. (2014). Barycentric Corrections at 1 cm s-1 for Precise Doppler Velocities. PASP, 126, 838. https://doi.org/10.1086/678541",
    "Kanodia, S., & Wright, J. T. (2018). Python Leap Second Management and Implementation of Precise Barycentric Correction (barycorrpy). RNAAS, 2(1), 4. https://doi.org/10.3847/2515-5172/aaa4b7",
    "Rainer, M., et al. (2018). Introducing GOFIO: a DRS for the GIANO-B near-infrared spectrograph. Proc. SPIE 10702. https://doi.org/10.1117/12.2312130",
    "Markwardt, C. B. (2009). Non-linear Least-squares Fitting in IDL with MPFIT. ASP Conf. Ser. 411, 251. arXiv:0902.2850"
  ]
}

CITATION.cff

0 → 100644
+89 −0
Changes for CITATION.cff: 89 added lines, 0 removed lines.
Original line number Diff line number Diff line
cff-version: 1.2.0
message: "If you use DataReductionGIANOB in your research, please cite it using the metadata below."
type: software
title: "DataReductionGIANOB"
abstract: >-
  DataReductionGIANOB is a Python graphical tool for the reduction of
  high-resolution near-infrared spectra obtained with the GIANO-B
  spectrograph at the Telescopio Nazionale Galileo (TNG). It drives the
  GOFIO data reduction software and adds the post-processing steps needed
  for high-resolution spectroscopy of exoplanet atmospheres: night and
  A/B nodding separation, pixel alignment of the spectra, automatic
  wavelength calibration against a telluric transmission model, spectral
  order selection and barycentric correction. Instrument set-ups are
  described by YAML files; configurations for GIANO-B, CRIRES+, ESPRESSO
  and HARPS-N are included.
authors:
  - family-names: Amadori
    given-names: Francesco
    email: francesco.amadori@inaf.it
    affiliation: "INAF - Osservatorio Astrofisico di Torino"
    orcid: "https://orcid.org/0000-0003-1316-1033"
  - family-names: Giacobbe
    given-names: Paolo
    email: paolo.giacobbe@inaf.it
    affiliation: "INAF - Osservatorio Astrofisico di Torino"
    orcid: "https://orcid.org/0000-0001-7034-7024"
version: 1.0.0
date-released: "2026-09-24"
doi: "10.5281/zenodo.22943605"
identifiers:
  - type: doi
    value: "10.5281/zenodo.22943605"
    description: "Zenodo archive of version 1.0.0"
repository-code: "https://git.ia2.inaf.it/guibrushr/datareductiongianob"
license: GPL-3.0-or-later
keywords:
  - astronomy
  - high-resolution spectroscopy
  - near-infrared spectroscopy
  - GIANO-B
  - TNG
  - data reduction
  - exoplanet atmospheres
  - Python
references:
  - type: article
    authors:
      - family-names: Wright
        given-names: Jason T.
      - family-names: Eastman
        given-names: Jason D.
    title: "Barycentric Corrections at 1 cm s-1 for Precise Doppler Velocities"
    journal: "Publications of the Astronomical Society of the Pacific"
    volume: 126
    year: 2014
    doi: "10.1086/678541"
  - type: article
    authors:
      - family-names: Kanodia
        given-names: Shubham
      - family-names: Wright
        given-names: Jason T.
    title: "Python Leap Second Management and Implementation of Precise Barycentric Correction (barycorrpy)"
    journal: "Research Notes of the AAS"
    volume: 2
    issue: 1
    year: 2018
    doi: "10.3847/2515-5172/aaa4b7"
  - type: conference-paper
    authors:
      - family-names: Rainer
        given-names: Monica
      - name: "et al."
    title: "Introducing GOFIO: a DRS for the GIANO-B near-infrared spectrograph"
    collection-title: "Proceedings of the SPIE"
    volume: 10702
    year: 2018
    doi: "10.1117/12.2312130"
  - type: conference-paper
    authors:
      - family-names: Markwardt
        given-names: Craig B.
    title: "Non-linear Least-squares Fitting in IDL with MPFIT"
    collection-title: "Astronomical Data Analysis Software and Systems XVIII, ASP Conference Series"
    volume: 411
    year: 2009
    identifiers:
      - type: other
        value: "arXiv:0902.2850"
+30 −5
Changes for README.md: 30 added lines, 5 removed lines.
Original line number Diff line number Diff line
# DataReductionGIANOB
**Data reduction tool to reduce GIANOB datasets**

[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.22943605.svg)](https://doi.org/10.5281/zenodo.22943605)
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)

## Table of Contents
- [Prerequisites](#prerequisites)
- [Installation](#installation)
- [Configuration](#configuration-file-setup)
- [Usage](#usage)
- [Support](#support)
- [Citation](#citation)

---

@@ -43,15 +47,13 @@ sudo apt install git

## Installation

> **Important:** To access the DataReductionGIANOB project, please email [paolo.giacobbe@inaf.it](mailto:paolo.giacobbe@inaf.it) or [francesco.amadori@inaf.it](mailto:francesco.amadori@inaf.it) to request an invitation to the GitLab group.

### Step 1: Clone the Repository

Open a terminal and execute the following commands:
```bash
mkdir /preferred/path/guibrushr
cd /preferred/path/guibrushr/
git clone https://gitlab.com/guibrushr/DataReductionGIANOB.git
git clone https://git.ia2.inaf.it/guibrushr/datareductiongianob.git DataReductionGIANOB
```

### Step 2: Create Conda Environment
@@ -191,8 +193,31 @@ You should have received a copy of the GNU General Public License along with thi

[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)

## Third-party code

DataReductionGIANOB ships modified copies of the following packages:

- `DataReductionGIANOB/barycorrpy_fold/`: [barycorrpy](https://github.com/shbhuk/barycorrpy) by S. Kanodia and J. T. Wright (GPL-3.0), used for the barycentric correction ([Kanodia & Wright 2018](https://doi.org/10.3847/2515-5172/aaa4b7); [Wright & Eastman 2014](https://doi.org/10.1086/678541)).
- `DataReductionGIANOB/mpfit.py`: Python port by M. Rivers of the MPFIT IDL library by C. B. Markwardt ([Markwardt 2009](https://arxiv.org/abs/0902.2850)).

The first reduction phase relies on [GOFIO](https://atreides.tng.iac.es/monica.rainer/gofio) ([Rainer et al. 2018](https://doi.org/10.1117/12.2312130)), which must be installed separately.

## Citation

If you use DataReductionGIANOB in your research, please cite:
If you use DataReductionGIANOB in your research, please cite the Zenodo record:

> Amadori, F., & Giacobbe, P. (2026). *DataReductionGIANOB* (Version 1.0.0) [Computer software]. Zenodo. https://doi.org/10.5281/zenodo.22943605

```bibtex
@software{amadori_2026_datareductiongianob,
  author    = {Amadori, Francesco and Giacobbe, Paolo},
  title     = {{DataReductionGIANOB}},
  version   = {1.0.0},
  year      = {2026},
  publisher = {Zenodo},
  doi       = {10.5281/zenodo.22943605},
  url       = {https://doi.org/10.5281/zenodo.22943605}
}
```

[Add citation information here]
 No newline at end of file
Machine-readable citation metadata are available in [`CITATION.cff`](CITATION.cff).
 No newline at end of file
+11 −5
Changes for pyproject.toml: 11 added lines, 5 removed lines.
Original line number Diff line number Diff line
[build-system]
requires = ["setuptools", "wheel"]
requires = ["setuptools>=77", "wheel"]
build-backend = "setuptools.build_meta"

[tool.setuptools]
@@ -7,7 +7,7 @@ packages = ["DataReductionGIANOB"]

[project]
name = "DataReductionGIANOB"
version = "0.0.1"
version = "1.0.0"
authors = [
    { name = "Francesco Amadori", email = "francesco.a97.ing@outlook.it" },
    { name = "Francesco Amadori", email = "francesco.amadori@inaf.it" },
@@ -15,6 +15,8 @@ authors = [
]

description = "A software for GIANOB data reduction"
license = "GPL-3.0-or-later"
license-files = ["LICENSE"]
readme = "README.md"
requires-python = ">=3.8"
dependencies = [
@@ -31,6 +33,7 @@ dependencies = [
	"mc3",  
	"numpy==1.24.3",  
	"pandas",
	"pymupdf",
	"petitRADTRANS",
	"pillow",
	"pyastronomy",  
@@ -39,6 +42,7 @@ dependencies = [
	"pyreadstat",  
	"pyratbay",  
	"pysal",  
	"pyyaml",
	"radvel",  
	"requests",  
	"requests-cache",  
@@ -54,13 +58,15 @@ dependencies = [

classifiers = [
    "Programming Language :: Python :: 3",
    "License :: OSI Approved :: MIT License",
    "Operating System :: OS Independent",
    "Intended Audience :: Science/Research",
    "Topic :: Scientific/Engineering :: Astronomy",
]

[project.scripts]
DataReductionGIANOB = "DataReductionGIANOB.DataReductionGIANOB:main"

[project.urls]
Homepage = "https://github.com/francescoa97outlook/DataReductionGIANOB"
Issues = "https://github.com/francescoa97outlook/DataReductionGIANOB/issues"
Homepage = "https://git.ia2.inaf.it/guibrushr/datareductiongianob"
Issues = "https://git.ia2.inaf.it/guibrushr/datareductiongianob/-/issues"
DOI = "https://doi.org/10.5281/zenodo.22943605"