openjournals / joss-reviews

Reviews for the Journal of Open Source Software
Creative Commons Zero v1.0 Universal
696 stars 36 forks source link

[REVIEW]: pycoxmunk: A python package for computing sea surface reflectance #5074

Closed editorialbot closed 1 year ago

editorialbot commented 1 year ago

Submitting author: !--author-handle-->@simonrp84<!--end-author-handle-- (Simon Proud) Repository: https://github.com/simonrp84/PyCoxMunk Branch with paper.md (empty if default branch): paper Version: v1.1.0 Editor: !--editor-->@pdebuyl<!--end-editor-- Reviewers: @arthur-e, @molinav Archive: 10.5281/zenodo.8020079

Status

status

Status badge code:

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

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

@arthur-e & @molinav, 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 @pdebuyl 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 @arthur-e

πŸ“ Checklist for @molinav

editorialbot commented 1 year ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

simonrp84 commented 1 year ago

@editorialbot check references

editorialbot commented 1 year ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.5194/amt-3-813-2010 is OK
- 10.5194/amt-5-1889-2012 is OK
- 10.1364/josa.44.000838 is OK
- 10.1175/bams-d-17-0277.1 is OK
- 10.25080/majora-7b98e3ed-013 is OK
- 10.1016/j.jqsrt.2009.10.001 is OK

MISSING DOIs

- None

INVALID DOIs

- None
simonrp84 commented 1 year ago

I updated the paper and added DOIs, editorialbot seems happy with it now.

pdebuyl commented 1 year ago

Thanks. Do you have a recommendation for a geotiff viewer?

simonrp84 commented 1 year ago

I typically use QGIS for viewing geotiffs.

pdebuyl commented 1 year ago

Hi Simon, sorry again for the delay.

My comments on the paper:

Regarding the code itself, I could test all example fine now. Thanks for including test data, this makes it more convenient. For info, to read the data I ended up using rasterio.read in the notebooks.

A final comment/question/request: In the article, you show a natural color Himawari image and the corresponding reflectance. The algorithm produces a reflectance per channel, what is plotted in Fig 1 (b) ? Is the code to make the figure available? Same question for the image in the docs.

simonrp84 commented 1 year ago

Hi Simon, sorry again for the delay.

No problem, @pdebuyl, thanks for your comments. :)

My comments on the paper:

  • Could you say, if appropriate, a few words about how the Fortran -> Python change was done?

I've edited this section now, as it's not so much a conversion as a newly written code using the fortran as reference to ensure the output is correct.

  • Line 57 starts with "In this case ..." but the sentence does not follow one that could be referred to.

Oops, good catch. Corrected.

  • Can you give a reference for the formula on line 64? If it is common knowledge, a textbook would do for instance, else an article is fine.

The formula is from Sayer 2010, I've added a citation now.

  • The reference "Sayer 2010" has "(A)ATSR" will a lowercase A and an extra space between "(A)" and "ATSR", can you fix it?

Hopefully fixed now.

  • Nowhere in the article is there a mention of numba. It is used in the code and is the only notable import that is not mentioned.

I've added a sentence and corresponding citation that states pycoxmunk uses numba in the BRDF calculations.

Regarding the code itself, I could test all example fine now. Thanks for including test data, this makes it more convenient. For info, to read the data I ended up using rasterio.read in the notebooks.

Great! Thanks for info regarding rasterio, I don't have much experience of using it - hence the method in the notebooks - but may change in a future release once I become more familiar with it.

A final comment/question/request: In the article, you show a natural color Himawari image and the corresponding reflectance. The algorithm produces a reflectance per channel, what is plotted in Fig 1 (b) ? Is the code to make the figure available? Same question for the image in the docs.

The image in the paper is an RGB composite of the Cox-Munk reflectance in the true color channels for Himawari. i.e: The calculated reflectance in the 470, 510 and 640nm channels. I've updated the figure caption to state this.

The image in the docs was produced with an old version of the existing SEVIRI example. The example notebook has been updated and now includes the code needed to generate the image. I've also updated the image itself, as it was produced with an old version of pycoxmunk.

simonrp84 commented 1 year ago

@editorialbot generate pdf

editorialbot commented 1 year ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

simonrp84 commented 1 year ago

@editorialbot generate pdf

editorialbot commented 1 year ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

simonrp84 commented 1 year ago

Hmm, it seems the A in AATSR is still uncapitalised in the Sayer reference: (a)ATSR. Any ideas how that could be fixed? I've not used markdown much before and google isn't throwing any helpful answers my way...

molinav commented 1 year ago

@simonrp84 Where can I find the Markdown file? I cannot manage to find it in the joss-papers or pycoxmunk repos, I could try to take a look.

simonrp84 commented 1 year ago

@editorialbot generate pdf

simonrp84 commented 1 year ago

@molinav It's in a branch of the pycoxmunk repo. Filename is paper.md.

Although actually I think this is a bibtex issue with capitalisation, let's see if my new push has fixed it...

molinav commented 1 year ago

Thanks @simonrp84! I am not sure if it will work in this case, but sometimes I need to enclose acronyms in BibTeX entries with parentheses to ensure that the uppercase/lowercase is preserved as written in the bibfile:

@article{sayer:2010,
  title={A sea surface reflectance model for {(A)ATSR}, and application to aerosol retrievals},
  author={Sayer, AM and Thomas, GE and Grainger, RG},
  journal={Atmospheric Measurement Techniques},
  volume={3},
  number={4},
  pages={813--838},
  year={2010},
  publisher={Copernicus GmbH},
  doi = {10.5194/amt-3-813-2010},
}
simonrp84 commented 1 year ago

Yep, the curly brackets seem to have fixed it. Thanks for the help, @molinav. Your comments should all be addressed now @pdebuyl!

pdebuyl commented 1 year ago

@editorialbot generate pdf

editorialbot commented 1 year ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

pdebuyl commented 1 year ago

Thanks @molinav for the help :-)

Thanks @simonrp84 for the update, this is all fine.

Can you make a zenodo archive and post the DOI of the archive here, as well as the specific version of that archive?

The archive must have same title and metadata as the paper, including the author list.

simonrp84 commented 1 year ago

Hi @pdebuyl, I've made a new release and it's automatically generated a zenodo archive: https://doi.org/10.5281/zenodo.8020079 Version 1.1.0

pdebuyl commented 1 year ago

@editorialbot set 10.5281/zenodo.8020079 as archive

editorialbot commented 1 year ago

Done! archive is now 10.5281/zenodo.8020079

pdebuyl commented 1 year ago

@editorialbot set v1.1.0 as version

editorialbot commented 1 year ago

Done! version is now v1.1.0

pdebuyl commented 1 year ago

Can you set the title of the archive as "pycoxmunk: A python..." ?

simonrp84 commented 1 year ago

Oops, my mistake. That's done now.

pdebuyl commented 1 year ago

@editorialbot recommend-accept

editorialbot commented 1 year ago
Attempting dry run of processing paper acceptance...
editorialbot commented 1 year ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.5194/amt-3-813-2010 is OK
- 10.5194/amt-5-1889-2012 is OK
- 10.1364/josa.44.000838 is OK
- 10.1175/bams-d-17-0277.1 is OK
- 10.25080/majora-7b98e3ed-013 is OK
- 10.1016/j.jqsrt.2009.10.001 is OK

MISSING DOIs

- None

INVALID DOIs

- None
editorialbot commented 1 year ago

:wave: @openjournals/ese-eics, this paper is ready to be accepted and published.

Check final proof :point_right::page_facing_up: Download article

If the paper PDF and the deposit XML files look good in https://github.com/openjournals/joss-papers/pull/4295, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

kthyng commented 1 year ago

My steps are:

kthyng commented 1 year ago

Ok looks good to go!

kthyng commented 1 year ago

@editorialbot accept

editorialbot commented 1 year ago
Doing it live! Attempting automated processing of paper acceptance...
editorialbot commented 1 year ago

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: Proud given-names: Simon R. orcid: "https://orcid.org/0000-0003-3880-6774" doi: 10.5281/zenodo.8020079 message: If you use this software, please cite our article in the Journal of Open Source Software. preferred-citation: authors: - family-names: Proud given-names: Simon R. orcid: "https://orcid.org/0000-0003-3880-6774" date-published: 2023-06-13 doi: 10.21105/joss.05074 issn: 2475-9066 issue: 86 journal: Journal of Open Source Software publisher: name: Open Journals start: 5074 title: "pycoxmunk: A python package for computing sea surface reflectance" type: article url: "https://joss.theoj.org/papers/10.21105/joss.05074" volume: 8 title: "pycoxmunk: A python package for computing sea surface reflectance" ```

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 commented 1 year ago

🐦🐦🐦 πŸ‘‰ Tweet for this paper πŸ‘ˆ 🐦🐦🐦

editorialbot commented 1 year ago

🐘🐘🐘 πŸ‘‰ Toot for this paper πŸ‘ˆ 🐘🐘🐘

editorialbot commented 1 year ago

🚨🚨🚨 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 :point_right: https://github.com/openjournals/joss-papers/pull/4307
  2. Wait a couple of minutes, then verify that the paper DOI resolves https://doi.org/10.21105/joss.05074
  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...

kthyng commented 1 year ago

Congrats on your new publication @simonrp84!! Many thanks to editor @pdebuyl and reviewers @arthur-e and @molinav for your time, hard work, and expertise!

(I'll close this issue once the DOI resolves)

editorialbot commented 1 year ago

:tada::tada::tada: Congratulations on your paper acceptance! :tada::tada::tada:

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.05074/status.svg)](https://doi.org/10.21105/joss.05074)

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

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

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:

simonrp84 commented 1 year ago

Thank you, all, for your work in reviewing and editing this paper - much appreciated!

pdebuyl commented 1 year ago

Thanks @kthyng !