Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[REVIEW]: QSOnic: fast quasar continuum fitting #6373

Closed
editorialbot opened this issue Feb 19, 2024 · 76 comments
Closed

[REVIEW]: QSOnic: fast quasar continuum fitting #6373

editorialbot opened this issue Feb 19, 2024 · 76 comments
Assignees
Labels
accepted published Papers published in JOSS Python recommend-accept Papers recommended for acceptance in JOSS. review Track: 1 (AASS) Astronomy, Astrophysics, and Space Sciences

Comments

@editorialbot
Copy link
Collaborator

editorialbot commented Feb 19, 2024

Submitting author: @p-slash (Naim Göksel Karaçaylı)
Repository: https://github.com/p-slash/qsonic
Branch with paper.md (empty if default branch): main
Version: v1.0.0
Editor: @ivastar
Reviewers: @gcalderone, @corentinravoux
Archive: 10.5281/zenodo.11105006

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/e12beb52b1db87776c325993c713a822"><img src="https://joss.theoj.org/papers/e12beb52b1db87776c325993c713a822/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/e12beb52b1db87776c325993c713a822/status.svg)](https://joss.theoj.org/papers/e12beb52b1db87776c325993c713a822)

Reviewers and authors:

Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)

Reviewer instructions & questions

@gcalderone & @corentinravoux, your review will be checklist based. Each of you will have a separate checklist that you should update when carrying out your review.
First of all you need to run this command in a separate comment to create the checklist:

@editorialbot generate my checklist

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @ivastar know.

Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest

Checklists

📝 Checklist for @corentinravoux

📝 Checklist for @gcalderone

@editorialbot
Copy link
Collaborator Author

Hello humans, I'm @editorialbot, a robot that can help you with some common editorial tasks.

For a list of things I can do to help you, just type:

@editorialbot commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

Software report:

github.com/AlDanial/cloc v 1.88  T=0.09 s (564.8 files/s, 87819.5 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Python                          24           1312           1941           3503
reStructuredText                18            259            409            177
TeX                              1              8              0            105
YAML                             4             15             12             90
Markdown                         1             10              0             31
DOS Batch                        1              8              1             26
make                             1              4              7              9
TOML                             1              0              0              3
-------------------------------------------------------------------------------
SUM:                            51           1616           2370           3944
-------------------------------------------------------------------------------


gitinspector failed to run statistical information for the repository

@editorialbot
Copy link
Collaborator Author

Wordcount for paper.md is 551

@editorialbot
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.3847/1538-4357/abb085 is OK
- 10.1103/PhysRevD.96.023522 is OK
- 10.1088/1475-7516/2015/02/045 is OK
- 10.1093/mnras/stab3201 is OK
- 10.1093/mnras/stae171 is OK

MISSING DOIs

- None

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@ivastar
Copy link

ivastar commented Feb 19, 2024

@gcalderone, @corentinravoux thank you for agreeing to review this submission! Please review the guidelines above: #6373 (comment)

Comments and recommendations for changes should ideally be in issues opened on the code repo but comments in this thread are also welcome. When you are finished, please let us know in the comments here.

We are looking for reviews in 3-4 weeks, so let's aim for March 18th at the latest for the first round of comments.

Let me know if you have questions!

@corentinravoux
Copy link

@ivastar Thank you, I will try to do my best to provide those comments quickly

@corentinravoux
Copy link

corentinravoux commented Feb 20, 2024

Review checklist for @corentinravoux

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the https://github.com/p-slash/qsonic?
  • License: Does the repository contain a plain-text LICENSE or COPYING file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@p-slash) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines
  • Data sharing: If the paper contains original data, data are accessible to the reviewers. If the paper contains no original data, please check this item.
  • Reproducibility: If the paper contains original results, results are entirely reproducible by reviewers. If the paper contains no original results, please check this item.
  • Human and animal research: If the paper contains original data research on humans subjects or animals, does it comply with JOSS's human participants research policy and/or animal research policy? If the paper contains no such data, please check this item.

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
  • Functionality: Have the functional claims of the software been confirmed?
  • Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Does the paper have a section titled 'Statement of need' that clearly states what problems the software is designed to solve, who the target audience is, and its relation to other work?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

@corentinravoux
Copy link

I have a COI with this review, I work in the same collaboration than the main author (DESI), and we are co-author of some papers (Karaçaylı et al. 2024, Ravoux et al. 2023). I am contributing and using the picca code mentioned in the paper.
However, I think I am able to provide an impartial assessment of this work, as I am open to using alternative continuum fitting algorithm, and I never used QSOnic. I request to waive this COI if this is possible.

@corentinravoux
Copy link

Comments on the joss-paper (I used the download version):

  • For the reference, I would add Armengaud et al. 2017 for the dark matter constraints, and Ravoux et al. 2023 for the measurements.
  • The sentence "The field has devised ..." is unclear. Do you mean recent studies ? And to which "well-known modes" are you referring ?
  • "a polynomial of ln 𝜆" Maybe I am wrong but i thought that for DESI, it is just "𝜆" ?
  • "a delete-one Jackknife estimate for the covariance matrix used in pipeline noise calibration correction calculation" Here, do you mean the picca equivalent of eta ? This end of sentence might be too technical for the statement of need here.
  • When you say that QSOnic is built on the same algorithm than picca, do you mean that you used part of the software, or that the principle of the algorithm is the same ? Please clarify that on the text.

@ivastar
Copy link

ivastar commented Feb 20, 2024

#6373 (comment)

@corentinravoux The COI can be waived for this specific case. Thank you declaring your relation to the author and this work.

@corentinravoux
Copy link

The review process is quite faster than I expected. I summarized my comments in the following issue: p-slash/qsonic#92.
There are some comments that are blocking the completion on my checklist. I let time to the main author of QSOnic to address them before I validate all points.

@gcalderone
Copy link

gcalderone commented Mar 8, 2024

Review checklist for @gcalderone

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the https://github.com/p-slash/qsonic?
  • License: Does the repository contain a plain-text LICENSE or COPYING file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@p-slash) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines
  • Data sharing: If the paper contains original data, data are accessible to the reviewers. If the paper contains no original data, please check this item.
  • Reproducibility: If the paper contains original results, results are entirely reproducible by reviewers. If the paper contains no original results, please check this item.
  • Human and animal research: If the paper contains original data research on humans subjects or animals, does it comply with JOSS's human participants research policy and/or animal research policy? If the paper contains no such data, please check this item.

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
  • Functionality: Have the functional claims of the software been confirmed?
  • Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Does the paper have a section titled 'Statement of need' that clearly states what problems the software is designed to solve, who the target audience is, and its relation to other work?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

@gcalderone
Copy link

I provided my comments in p-slash/qsonic#93

@ivastar
Copy link

ivastar commented Mar 11, 2024

@p-slash I believe we have both sets of comments now. The ball is in your court. Please review the comments and respond to them here or in the review issues that have been opened. I would appreciate it if you could do this in the next 3-4 weeks.

@p-slash
Copy link

p-slash commented Mar 15, 2024

My other responses can be found at p-slash/qsonic#93 (comment) and p-slash/qsonic#92 (comment). The updated documentation can be accessed here: https://qsonic.readthedocs.io/en/paper/index.html.

Thanks @corentinravoux for the feedback. This is the second part of my response.

* For the reference, I would add Armengaud et al. 2017 for the dark matter constraints, and Ravoux et al. 2023 for the measurements.

Added.

* The sentence "The field has devised ..." is unclear. Do you mean recent studies ? And to which "well-known modes" are you referring ?

Paper now says: Recent studies have devised a simple continuum model to homogenize the analysis across quasars so that the errors in the estimated continuum are contained to well-known modes, such as the amplitude and slope of the quasar continuum.

* "a polynomial of ln 𝜆" Maybe I am wrong but i thought that for DESI, it is just "𝜆" ?

We are still fitting for ln lambda for DESI. There was a version of picca that performed the continuum fitting on lambda, but that was eventually removed before EDR analyses took off.

* "a delete-one Jackknife estimate for the covariance matrix used in pipeline noise calibration correction calculation" Here, do you mean the picca equivalent of eta ? This end of sentence might be too technical for the statement of need here.

Paper now says: It saves detailed intermediate data products including best-fit parameters for each quasar and the covariance matrix used in pipeline noise calibration correction ($\eta$ parameter in references [@bourbouxCompletedSDSSIVExtended:2020; @karacayliOptimal1DLy:2024]).

* When you say that QSOnic is built on the same algorithm than picca, do you mean that you used part of the software, or that the principle of the algorithm is the same ? Please clarify that on the text.

Paper now says: QSOnic is built on the same principle of picca continuum fitting algorithm. Unlike picca, QSOnic has robust convergence criteria, provides a generic API for DESI quasar spectra, and saves more intermediate data products. Due to optimized IO routines, MPI parallelization and efficient numerical algorithms, it may be faster than picca.

@ivastar
Copy link

ivastar commented Mar 18, 2024

Thank you for the fast turn-around on the comments, @p-slash!!!

@gcalderone and @corentinravoux, could you please review the responses and let me know if you believe all points have been addressed? If no, please add additional comments. If yes, please recommend publications.

@gcalderone
Copy link

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@gcalderone
Copy link

Thanks @p-slash for the updates!
Please find my new comment in the same issue: p-slash/qsonic#93

@corentinravoux
Copy link

Thanks @p-slash, you answered all my comments. I have checked all the items of my checklist, and I recommend this package for publication.

I have a minor comment which is very technical and does not interfere at all with the review:

* "a polynomial of ln 𝜆" Maybe I am wrong but i thought that for DESI, it is just "𝜆" ?

We are still fitting for ln lambda for DESI. There was a version of picca that performed the continuum fitting on lambda, but that was eventually removed before EDR analyses took off.

On this aspect, I was sure that it was in lambda in picca, but after double checking it is indeed in log_lambda. I do not understand why this is the case for DESI data which are linearly binned, did you test on QSOnic the difference in term of continuum fitting with different term in the polynomial term (lambda vs log lambda) ?

@p-slash
Copy link

p-slash commented Mar 29, 2024

Thanks. I addressed @gcalderone's comments under the issue.

@corentinravoux, re: ln lambda: Yes, DESI is linearly spaced, but this term is related to the quasar continuum model, so it does not need to be tied to the observational grid. If I remember correctly, ln lambda is the better of the two for the quasar continuum model theoretically, but I do not have a document to point you to. I had the comparison with picca, and the difference was small, but I did not code within qsonic. Furthermore, changing this model then propagates to the distortion matrix calculation. It complicates the entire analysis, so it may be that we simplified it to a single choice in the end.

@gcalderone
Copy link

Thanks @p-slash !
I closed the p-slash/qsonic#93 issue, and recommend acceptance of the paper.

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@ivastar
Copy link

ivastar commented May 2, 2024

@editorialbot check references

@editorialbot
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.3847/1538-4357/abb085 is OK
- 10.1103/PhysRevD.96.023522 is OK
- 10.1088/1475-7516/2015/02/045 is OK
- 10.1093/mnras/stab3201 is OK
- 10.1093/mnras/stae171 is OK
- 10.1093/mnras/stad3008 is OK
- 10.48550/arXiv.1611.00036 is OK
- 10.1093/mnras/stx1870 is OK
- 10.1086/427976 is OK

MISSING DOIs

- None

INVALID DOIs

- None

@ivastar
Copy link

ivastar commented May 2, 2024

@editorialbot recommend-accept

@editorialbot
Copy link
Collaborator Author

Attempting dry run of processing paper acceptance...

@editorialbot
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.3847/1538-4357/abb085 is OK
- 10.1103/PhysRevD.96.023522 is OK
- 10.1088/1475-7516/2015/02/045 is OK
- 10.1093/mnras/stab3201 is OK
- 10.1093/mnras/stae171 is OK
- 10.1093/mnras/stad3008 is OK
- 10.48550/arXiv.1611.00036 is OK
- 10.1093/mnras/stx1870 is OK
- 10.1086/427976 is OK

MISSING DOIs

- None

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

👋 @openjournals/aass-eics, this paper is ready to be accepted and published.

Check final proof 👉📄 Download article

If the paper PDF and the deposit XML files look good in openjournals/joss-papers#5301, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

@editorialbot editorialbot added the recommend-accept Papers recommended for acceptance in JOSS. label May 2, 2024
@dfm
Copy link

dfm commented May 5, 2024

I've opened a small PR and I can proceed with publication after that has been merged. Thanks!

@p-slash
Copy link

p-slash commented May 6, 2024

Merged. Thanks for fixing the references!

@dfm
Copy link

dfm commented May 6, 2024

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@p-slash
Copy link

p-slash commented May 6, 2024

@dfm I found another error in the references. It is the first reference.

@p-slash
Copy link

p-slash commented May 6, 2024

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@dfm
Copy link

dfm commented May 8, 2024

@editorialbot recommend-accept

@editorialbot
Copy link
Collaborator Author

Attempting dry run of processing paper acceptance...

@editorialbot
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.3847/1538-4357/abb085 is OK
- 10.1103/PhysRevD.96.023522 is OK
- 10.1088/1475-7516/2015/02/045 is OK
- 10.1093/mnras/stab3201 is OK
- 10.1093/mnras/stae171 is OK
- 10.1093/mnras/stad3008 is OK
- 10.48550/arXiv.1611.00036 is OK
- 10.1093/mnras/stx1870 is OK
- 10.1086/427976 is OK

MISSING DOIs

- None

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

👋 @openjournals/aass-eics, this paper is ready to be accepted and published.

Check final proof 👉📄 Download article

If the paper PDF and the deposit XML files look good in openjournals/joss-papers#5324, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

@dfm
Copy link

dfm commented May 8, 2024

@editorialbot accept

@editorialbot
Copy link
Collaborator Author

Doing it live! Attempting automated processing of paper acceptance...

@editorialbot
Copy link
Collaborator Author

Ensure proper citation by uploading a plain text CITATION.cff file to the default branch of your repository.

If using GitHub, a Cite this repository menu will appear in the About section, containing both APA and BibTeX formats. When exported to Zotero using a browser plugin, Zotero will automatically create an entry using the information contained in the .cff file.

You can copy the contents for your CITATION.cff file here:

CITATION.cff

cff-version: "1.2.0"
authors:
- family-names: Karaçaylı
  given-names: Naim Göksel
  orcid: "https://orcid.org/0000-0001-7336-8912"
doi: 10.5281/zenodo.11105006
message: If you use this software, please cite our article in the
  Journal of Open Source Software.
preferred-citation:
  authors:
  - family-names: Karaçaylı
    given-names: Naim Göksel
    orcid: "https://orcid.org/0000-0001-7336-8912"
  date-published: 2024-05-08
  doi: 10.21105/joss.06373
  issn: 2475-9066
  issue: 97
  journal: Journal of Open Source Software
  publisher:
    name: Open Journals
  start: 6373
  title: "QSOnic: fast quasar continuum fitting"
  type: article
  url: "https://joss.theoj.org/papers/10.21105/joss.06373"
  volume: 9
title: "QSOnic: fast quasar continuum fitting"

If the repository is not hosted on GitHub, a .cff file can still be uploaded to set your preferred citation. Users will be able to manually copy and paste the citation.

Find more information on .cff files here and here.

@editorialbot
Copy link
Collaborator Author

🐘🐘🐘 👉 Toot for this paper 👈 🐘🐘🐘

@editorialbot
Copy link
Collaborator Author

🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨

Here's what you must now do:

  1. Check final PDF and Crossref metadata that was deposited 👉 Creating pull request for 10.21105.joss.06373 joss-papers#5325
  2. Wait five minutes, then verify that the paper DOI resolves https://doi.org/10.21105/joss.06373
  3. If everything looks good, then close this review issue.
  4. Party like you just published a paper! 🎉🌈🦄💃👻🤘

Any issues? Notify your editorial technical team...

@editorialbot editorialbot added accepted published Papers published in JOSS labels May 8, 2024
@dfm
Copy link

dfm commented May 8, 2024

Many thanks to @gcalderone and @corentinravoux for reviewing and to @ivastar for editing! JOSS relies upon the volunteer effort of people like you and we simply wouldn't be able to do this without you!!

@p-slash — Your paper is now accepted and published in JOSS! ⚡🚀💥

@dfm dfm closed this as completed May 8, 2024
@editorialbot
Copy link
Collaborator Author

🎉🎉🎉 Congratulations on your paper acceptance! 🎉🎉🎉

If you would like to include a link to your paper from your README use the following code snippets:

Markdown:
[![DOI](https://joss.theoj.org/papers/10.21105/joss.06373/status.svg)](https://doi.org/10.21105/joss.06373)

HTML:
<a style="border-width:0" href="https://doi.org/10.21105/joss.06373">
  <img src="https://joss.theoj.org/papers/10.21105/joss.06373/status.svg" alt="DOI badge" >
</a>

reStructuredText:
.. image:: https://joss.theoj.org/papers/10.21105/joss.06373/status.svg
   :target: https://doi.org/10.21105/joss.06373

This is how it will look in your documentation:

DOI

We need your help!

The Journal of Open Source Software is a community-run journal and relies upon volunteer effort. If you'd like to support us please consider doing either one (or both) of the the following:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
accepted published Papers published in JOSS Python recommend-accept Papers recommended for acceptance in JOSS. review Track: 1 (AASS) Astronomy, Astrophysics, and Space Sciences
Projects
None yet
Development

No branches or pull requests

6 participants