openjournals / joss-reviews

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

[REVIEW]: Tools21cm: A python package to analyse the large-scale 21-cm signal from the Epoch of Reionization and Cosmic Dawn #2363

Closed whedon closed 4 years ago

whedon commented 4 years ago

Submitting author: @sambit-giri (Sambit Kumar Giri) Repository: https://github.com/sambit-giri/tools21cm Version: v2.1 Editor: @pibion Reviewers: @nicholebarry, @aureliocarnero, @ziotom78 Archive: 10.5281/zenodo.3973542

:warning: JOSS reduced service mode :warning:

Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.

Status

status

Status badge code:

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

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

@nicholebarry & @aureliocarnero & @ziotom78 , please carry out your review in this issue by updating the checklist below. If you cannot edit the checklist please:

  1. Make sure you're logged in to your GitHub account
  2. Be sure to accept the invite at this URL: https://github.com/openjournals/joss-reviews/invitations

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

Please try and complete your review in the next six weeks

Review checklist for @nicholebarry

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

Review checklist for @ziotom78

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

Review checklist for @aureliocarnero

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

nicholebarry commented 4 years ago

@sambit-giri

Here are some purely atheistic suggestions as I go through the tutorial.

  1. subtract_mean_channelwise is in t2c.read_files. Is there a more logic place for this function?
  2. There's a couple of places where the auto-generated descriptions on the readthedocs are hard to parse because there should be a newline and/or period. Some examples are in Other Modules under "Some useful attributes" and on the Main modules page under t2c.power_spectrum.power_spectrum_mu.
  3. In Temperature, please add units
  4. In Tutorials under 21cm Brightness Temperature, please add units to the tutorial plot
  5. In Tutorials, please set x and y axis labels for all plots where applicable
nicholebarry commented 4 years ago

@sambit-giri

Here are some more detailed comments/questions as I go through the tutorial.

  1. In Tutorials under 21cm Brightness Temperature, it seems as though the sample data set already has its per-freq mean subtracted, and thus the subtract_mean_channelwise has very little effect. This may be confusing to some.
  2. In Tutorials under 21cm power spectrum, should the box_dims be the C2Ray box size (244) or the array size (250)? Looking at the code, it seems as though it should be 244, but this is confusing from a new-user tutorial standpoint. Add a comment?
  3. I tried to expand upon the tutorial a little bit in 21cm power spectrum, and I got the following error.
    
    t2c.power_spectrum.dimensionless_ps(dT_subtracted, kbins=15, box_dims=box_dims)
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "/Users/nabarry/opt/anaconda3/lib/python3.7/site-packages/tools21cm/power_spectrum.py", line 464, in dimensionless_ps
    ks_new = np.array([ks[factor*(i+0.5)] for i in range(kbins)])
    File "/Users/nabarry/opt/anaconda3/lib/python3.7/site-packages/tools21cm/power_spectrum.py", line 464, in <listcomp>
    ks_new = np.array([ks[factor*(i+0.5)] for i in range(kbins)])
    IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices
sambit-giri commented 4 years ago

Dear @nicholebarry

  1. subtract_mean_channelwise is in t2c.read_files. Is there a more logic place for this function?

I discovered that subtract_mean_signal and subtract_mean_channelwise are doing the same thing. Therefore I have removed subtract_mean_channelwise. I think subtract_mean_signal is at the place.

  1. There's a couple of places where the auto-generated descriptions on the readthedocs are hard to parse because there should be a newline and/or period. Some examples are in Other Modules under "Some useful attributes" and on the Main modules page under t2c.power_spectrum.power_spectrum_mu.

Thanks for pointing it out. I have fixed them.

  1. In Temperature, please add units

Done.

  1. In Tutorials under 21cm Brightness Temperature, please add units to the tutorial plot

Done.

  1. In Tutorials, please set x and y axis labels for all plots where applicable

Done.

sambit-giri commented 4 years ago

@nicholebarry

@sambit-giri

Here are some more detailed comments/questions as I go through the tutorial.

  1. In Tutorials under 21cm Brightness Temperature, it seems as though the sample data set already has its per-freq mean subtracted, and thus the subtract_mean_channelwise has very little effect. This may be confusing to some.

I don't think so. The tutorial now prints the mean of the first channel before and after applying subtract_mean_signal.

  1. In Tutorials under 21cm power spectrum, should the box_dims be the C2Ray box size (244) or the array size (250)? Looking at the code, it seems as though it should be 244, but this is confusing from a new-user tutorial standpoint. Add a comment?

I have commented on this in the tutorial.

  1. I tried to expand upon the tutorial a little bit in 21cm power spectrum, and I got the following error.
t2c.power_spectrum.dimensionless_ps(dT_subtracted, kbins=15, box_dims=box_dims)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/nabarry/opt/anaconda3/lib/python3.7/site-packages/tools21cm/power_spectrum.py", line 464, in dimensionless_ps
    ks_new = np.array([ks[factor*(i+0.5)] for i in range(kbins)])
  File "/Users/nabarry/opt/anaconda3/lib/python3.7/site-packages/tools21cm/power_spectrum.py", line 464, in <listcomp>
    ks_new = np.array([ks[factor*(i+0.5)] for i in range(kbins)])
IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices

Thanks! I have fixed this error.

aureliocarnero commented 4 years ago

Dear @sambit-giri could you please put in the documentation explicitly something about running the Automated tests? I know there is a redmine in the directory, but how a user can know that directory exist? Cheers Aurelio

nicholebarry commented 4 years ago

@sambit-giri

Thanks for implementing those comments.

Final comments on the tutorial:

  1. Units for R and V in plots under bubble size distributions. Also titles to distinguish the plots using the various methods.
  2. I don't want to delay the publication, so this is more of a suggestion for the future. There's a lot of fantastic modules for observational aspects (foregrounds, noise, beam kernels, etc) that you've implemented. I'd love to see a tutorial to highlight this functionality. I also think this would advertise to a wider potential user-base.

Misc. comments from browsing the modules:

  1. t2c.telescope_functions.kelvin_2_jansky says it return muJy, but I think it may return Jy. Is this correct?

I look forward to using tools21cm in conjunction with 21cmfast in the future!

sambit-giri commented 4 years ago

@sambit-giri

Thanks for implementing those comments.

Final comments on the tutorial:

  1. Units for R and V in plots under bubble size distributions. Also titles to distinguish the plots using the various methods.
  2. I don't want to delay the publication, so this is more of a suggestion for the future. There's a lot of fantastic modules for observational aspects (foregrounds, noise, beam kernels, etc) that you've implemented. I'd love to see a tutorial to highlight this functionality. I also think this would advertise to a wider potential user-base.

Misc. comments from browsing the modules:

  1. t2c.telescope_functions.kelvin_2_jansky says it return muJy, but I think it may return Jy. Is this correct?

I look forward to using tools21cm in conjunction with 21cmfast in the future!

Thanks @nicholebarry for the recommendations. The current plan is to publish the base version of tools21cm. Few modules for observational aspects, like the foreground models and the beam kernels, are still under development. Therefore we have not mentioned about it in the paper. As the thermal noise goes well under the hood of observational aspects, we decided to release them together in the next release version.

sambit-giri commented 4 years ago

@nicholebarry

@sambit-giri

Thanks for implementing those comments.

Final comments on the tutorial:

  1. Units for R and V in plots under bubble size distributions. Also titles to distinguish the plots using the various methods.

Done.

Misc. comments from browsing the modules:

  1. t2c.telescope_functions.kelvin_2_jansky says it return muJy, but I think it may return Jy. Is this correct?

It is Jy. I have fixed it in the docstring.

nicholebarry commented 4 years ago

@sambit-giri

Thanks @nicholebarry for the recommendations. The current plan is to publish the base version of tools21cm. Few modules for observational aspects, like the foreground models and the beam kernels, are still under development. Therefore we have not mentioned about it in the paper. As the thermal noise goes well under the hood of observational aspects, we decided to release them together in the next release version.

Makes total sense.

I would suggest some more description/motivation on the front page of readthedocs (and subsequently the Github main readme) that would help a first-time user know whether or not this package satisfies their needs. Feel free to use these suggestions (or better ones you come up with). Just a few sentences for each would do. For reference, I'm using pyuvdata as a guide.

  1. Inputs: the simulation codes that you can currently input into tools21cm
  2. Outputs: bubble sizes, power spectrum, redshift distortions, etc
  3. Under-development: instrumental effects, noise, other specific simulation code inputs
  4. Citation: point to JOSS paper when published and a snippet about how people should cite the code.
  5. Tests: description on how to run the unit tests (also great for people to know if they've installed correctly).

I also ran into a few failures with unit testing (which look to be related to the dimensionless_ps bug seen above)


============================================================ FAILURES =============================================================
____________________________________________________ test_bubbles_from_kmeans _____________________________________________________

    def test_bubbles_from_kmeans():
>       out = t2c.bubbles_from_kmeans(data_ball, n_clusters=2, upper_lim=False)

test_IdentifyRegions.py:19: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../../../opt/anaconda3/lib/python3.7/site-packages/tools21cm/identify_regions.py:63: in bubbles_from_kmeans
    if n_clusters==2: array, t_th = threshold_kmeans(data, upper_lim=upper_lim, n_jobs=n_jobs)
../../../opt/anaconda3/lib/python3.7/site-packages/tools21cm/identify_regions.py:104: in threshold_kmeans
    else: t_th = X[y==1].max()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

a = array([], shape=(0, 1), dtype=uint8), axis = None, out = None, keepdims = False, initial = <no value>, where = True

    def _amax(a, axis=None, out=None, keepdims=False,
              initial=_NoValue, where=True):
>       return umr_maximum(a, axis, None, out, keepdims, initial, where)
E       ValueError: zero-size array to reduction operation maximum which has no identity

../../../opt/anaconda3/lib/python3.7/site-packages/numpy/core/_methods.py:30: ValueError
______________________________________________________ test_dimensionless_ps ______________________________________________________

    def test_dimensionless_ps():
        '''
        With this test, power_spectrum_nd and radial_average are also test.
        '''
>       dd, kk = t2c.dimensionless_ps(gauss, kbins=kbins, box_dims=box_dims)

test_PowerSpectrum.py:38: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../../../opt/anaconda3/lib/python3.7/site-packages/tools21cm/power_spectrum.py:464: in dimensionless_ps
    ks_new = np.array([ks[factor*(i+0.5)] for i in range(kbins)])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

.0 = <range_iterator object at 0x11bc5dba0>

>   ks_new = np.array([ks[factor*(i+0.5)] for i in range(kbins)])
E   IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices

../../../opt/anaconda3/lib/python3.7/site-packages/tools21cm/power_spectrum.py:464: IndexError
sambit-giri commented 4 years ago

@nicholebarry

I also ran into a few failures with unit testing (which look to be related to the dimensionless_ps bug seen above)

============================================================ FAILURES =============================================================
____________________________________________________ test_bubbles_from_kmeans _____________________________________________________

    def test_bubbles_from_kmeans():
>     out = t2c.bubbles_from_kmeans(data_ball, n_clusters=2, upper_lim=False)

test_IdentifyRegions.py:19: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../../../opt/anaconda3/lib/python3.7/site-packages/tools21cm/identify_regions.py:63: in bubbles_from_kmeans
    if n_clusters==2: array, t_th = threshold_kmeans(data, upper_lim=upper_lim, n_jobs=n_jobs)
../../../opt/anaconda3/lib/python3.7/site-packages/tools21cm/identify_regions.py:104: in threshold_kmeans
    else: t_th = X[y==1].max()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

a = array([], shape=(0, 1), dtype=uint8), axis = None, out = None, keepdims = False, initial = <no value>, where = True

    def _amax(a, axis=None, out=None, keepdims=False,
              initial=_NoValue, where=True):
>       return umr_maximum(a, axis, None, out, keepdims, initial, where)
E       ValueError: zero-size array to reduction operation maximum which has no identity

../../../opt/anaconda3/lib/python3.7/site-packages/numpy/core/_methods.py:30: ValueError
______________________________________________________ test_dimensionless_ps ______________________________________________________

    def test_dimensionless_ps():
      '''
      With this test, power_spectrum_nd and radial_average are also test.
      '''
>     dd, kk = t2c.dimensionless_ps(gauss, kbins=kbins, box_dims=box_dims)

test_PowerSpectrum.py:38: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../../../opt/anaconda3/lib/python3.7/site-packages/tools21cm/power_spectrum.py:464: in dimensionless_ps
    ks_new = np.array([ks[factor*(i+0.5)] for i in range(kbins)])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

.0 = <range_iterator object at 0x11bc5dba0>

>   ks_new = np.array([ks[factor*(i+0.5)] for i in range(kbins)])
E   IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices

../../../opt/anaconda3/lib/python3.7/site-packages/tools21cm/power_spectrum.py:464: IndexError

Did you git pull and install the package again? I had completely rewritten the dimensionless_ps function after your previous comment about it. It doesn't have the above lines anymore (https://tools21cm.readthedocs.io/_modules/t2c/power_spectrum.html#dimensionless_ps). I have fixed the other error you got with your unit test.

sambit-giri commented 4 years ago

Dear @nicholebarry

@sambit-giri

Thanks @nicholebarry for the recommendations. The current plan is to publish the base version of tools21cm. Few modules for observational aspects, like the foreground models and the beam kernels, are still under development. Therefore we have not mentioned about it in the paper. As the thermal noise goes well under the hood of observational aspects, we decided to release them together in the next release version.

Makes total sense.

I would suggest some more description/motivation on the front page of readthedocs (and subsequently the Github main readme) that would help a first-time user know whether or not this package satisfies their needs. Feel free to use these suggestions (or better ones you come up with). Just a few sentences for each would do. For reference, I'm using pyuvdata as a guide.

  1. Inputs: the simulation codes that you can currently input into tools21cm
  2. Outputs: bubble sizes, power spectrum, redshift distortions, etc
  3. Under-development: instrumental effects, noise, other specific simulation code inputs
  4. Citation: point to JOSS paper when published and a snippet about how people should cite the code.
  5. Tests: description on how to run the unit tests (also great for people to know if they've installed correctly).

We have updated the documentation as per your recommendations. We will put the "Citation" after a DOI is produced.

Best, Sambit

nicholebarry commented 4 years ago

@sambit-giri,

Yes, sorry, you're right. I didn't reinstall. Everything passed now. And I think that's a great level of detail with the documentation.

I'll officially accept. My review is done (@pibion need anything else from me?). Best of luck in the future!

sambit-giri commented 4 years ago

@nicholebarry

Thanks!

aureliocarnero commented 4 years ago

Dear @sambit-giri I saw you put the info about the automated test. Im also done with with review. Congratulations! @pibion

pibion commented 4 years ago

@nicholebarry @aureliocarnero thanks so much for your great work on this! There's nothing else you need to do for the publication process.

pibion commented 4 years ago

@ziotom78, thanks for getting started with your review! Do you expect to be able to work on this in the next few weeks? If not, I can set a reminder with whedon to ping you.

sambit-giri commented 4 years ago

Dear @sambit-giri I saw you put the info about the automated test. Im also done with with review. Congratulations! @pibion

Thanks @aureliocarnero!

ziotom78 commented 4 years ago

Hi @sambit-giri , I have almost finished my review. Everything looks ok, apart from one issue with the automatic tests. I have opened an issue (see above), once this is fixed my review is complete.

ziotom78 commented 4 years ago

Ok, issue #7 is closed, my review is complete. Thank you all!

sambit-giri commented 4 years ago

Ok, issue #7 is closed, my review is complete. Thank you all!

Thanks @ziotom78 !

sambit-giri commented 4 years ago

Dear @pibion

Is there anything else to be done? What is the next step in the process?

Best, Sambit

pibion commented 4 years ago

@sambit-giri we have just a few more steps - I need to do a read-through of the final pdf and then you'll need to archive your software on Zenodo or Figshare. I'll be able to review the pdf tomorrow and will ping you on the action you need to take tomorrow.

pibion commented 4 years ago

@whedon generate pdf

whedon commented 4 years ago

:point_right: Check article proof :page_facing_up: :point_left:

pibion commented 4 years ago

@whedon check references

whedon commented 4 years ago
Reference check summary:

OK DOIs

- 10.1016/j.physrep.2006.08.002 is OK
- 10.1088/0034-4885/75/8/086901 is OK
- 10.1111/j.1365-2966.2012.21293.x is OK
- 10.1093/mnras/stx2539 is OK
- 10.1093/mnras/stt1341 is OK
- 10.1093/mnras/stv2679 is OK
- 10.1093/mnras/stx649 is OK
- 10.1093/mnras/stz1220 is OK
- 10.1093/mnras/stz2224 is OK
- 10.1088/1475-7516/2019/02/058 is OK
- 10.1093/mnras/sty1786 is OK
- 10.1093/mnras/stv571 is OK
- 10.1007/s10686-013-9334-5 is OK
- 10.1051/0004-6361/201220873 is OK
- 10.1017/pasa.2018.37 is OK
- 10.1017/pasa.2012.007 is OK
- 10.1109/JPROC.2009.2017564 is OK

MISSING DOIs

- None

INVALID DOIs

- None
pibion commented 4 years ago

@sambit-giri the pdf looks great. I have one requested change: the last sentence in the second paragraph isn't immediately clear.

I would recommend splitting this sentence into two to make it clearer that Tools21cm takes the simulation outputs as its inputs. Maybe something like, " Much of the functionality of Tools21cm is focused on the construction and analysis of mock 21 cm observations in the context of current and upcoming radio telescopes, such as the Low Frequency Array (LOFAR; Haarlem et al., 2013), the Murchison Widefield Array (MWA; Tingay et al., 2013; Wayth et al., 2018), Hydrogen Epoch of Reionization Array (HERA; DeBoer et al., 2017) and the Square Kilometre Array (SKA; Mellema et al., 2013). Tools21cm takes the simulation data of these telescopes as its inputs."

sambit-giri commented 4 years ago

@whedon generate pdf

whedon commented 4 years ago

:point_right: Check article proof :page_facing_up: :point_left:

sambit-giri commented 4 years ago

@pibion Thanks for the recommendation. I have changed the sentence to the following:

"Much of the functionality of Tools21cm is focused on the construction and analysis of mock 21 cm observations in the context of current and upcoming radio telescopes, such as the Low Frequency Array (LOFAR; Haarlem et al., 2013), the Murchison Widefield Array (MWA; Tingay et al., 2013; Wayth et al., 2018), Hydrogen Epoch of Reionization Array (HERA; DeBoer et al., 2017) and the Square Kilometre Array (SKA; Mellema et al., 2013). Tools21cm post-processes cosmological simulation data to create mock 21 cm observations."

pibion commented 4 years ago

@whedon check references

whedon commented 4 years ago
Reference check summary:

OK DOIs

- 10.1016/j.physrep.2006.08.002 is OK
- 10.1088/0034-4885/75/8/086901 is OK
- 10.1111/j.1365-2966.2012.21293.x is OK
- 10.1093/mnras/stx2539 is OK
- 10.1093/mnras/stt1341 is OK
- 10.1093/mnras/stv2679 is OK
- 10.1093/mnras/stx649 is OK
- 10.1093/mnras/stz1220 is OK
- 10.1093/mnras/stz2224 is OK
- 10.1088/1475-7516/2019/02/058 is OK
- 10.1093/mnras/sty1786 is OK
- 10.1093/mnras/stv571 is OK
- 10.1007/s10686-013-9334-5 is OK
- 10.1051/0004-6361/201220873 is OK
- 10.1017/pasa.2018.37 is OK
- 10.1017/pasa.2012.007 is OK
- 10.1109/JPROC.2009.2017564 is OK

MISSING DOIs

- None

INVALID DOIs

- None
pibion commented 4 years ago

@sambit-giri this looks excellent, thank you!

I'll need you to make a tagged release and archive, and report the version number and archive DOI in this review thread.

Zenodo, Figshare, and OSF are good options. I like to use Zenodo because you can set it up to automatically create a new DOI every time you add a new tag to your repository.

sambit-giri commented 4 years ago

@pibion I have put it up on Zenodo. The link is https://zenodo.org/badge/latestdoi/88035801

pibion commented 4 years ago

@sambit-giri could you add Hannes Jensen to the author list on your Zenodo archive?

sambit-giri commented 4 years ago

@sambit-giri could you add Hannes Jensen to the author list on your Zenodo archive?

@pibion Done!

pibion commented 4 years ago

@sambit-giri thanks! I'll start the final part of the process now!

pibion commented 4 years ago

@whedon set 10.5281/zenodo.3973542 as archive

whedon commented 4 years ago

OK. 10.5281/zenodo.3973542 is the archive.

pibion commented 4 years ago

@whedon set v2.1 as version

whedon commented 4 years ago

OK. v2.1 is the version.

pibion commented 4 years ago

@whedon accept

whedon commented 4 years ago
Attempting dry run of processing paper acceptance...
whedon commented 4 years ago
Reference check summary:

OK DOIs

- 10.1016/j.physrep.2006.08.002 is OK
- 10.1088/0034-4885/75/8/086901 is OK
- 10.1111/j.1365-2966.2012.21293.x is OK
- 10.1093/mnras/stx2539 is OK
- 10.1093/mnras/stt1341 is OK
- 10.1093/mnras/stv2679 is OK
- 10.1093/mnras/stx649 is OK
- 10.1093/mnras/stz1220 is OK
- 10.1093/mnras/stz2224 is OK
- 10.1088/1475-7516/2019/02/058 is OK
- 10.1093/mnras/sty1786 is OK
- 10.1093/mnras/stv571 is OK
- 10.1007/s10686-013-9334-5 is OK
- 10.1051/0004-6361/201220873 is OK
- 10.1017/pasa.2018.37 is OK
- 10.1017/pasa.2012.007 is OK
- 10.1109/JPROC.2009.2017564 is OK

MISSING DOIs

- None

INVALID DOIs

- None
whedon commented 4 years ago

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

Check final proof :point_right: https://github.com/openjournals/joss-papers/pull/1632

If the paper PDF and Crossref deposit XML look good in https://github.com/openjournals/joss-papers/pull/1632, then you can now move forward with accepting the submission by compiling again with the flag deposit=true e.g.

@whedon accept deposit=true
danielskatz commented 4 years ago

👋 @aureliocarnero - I notice you did not check off the performance box as part of your review. Is there a problem with this item?

danielskatz commented 4 years ago

@sambit-giri - when "21 cm" is used as an adjective, as in "21 cm signal", it should be hyphenated to "21-cm signal". Can you change this in your paper and in the title? You might also want to change the title of the zenodo archive to match. Actually, I now see that you need to change the title of the Zenodo archive in any event, as it's the default title from the repo.

sambit-giri commented 4 years ago

@whedon generate pdf

whedon commented 4 years ago

:point_right: Check article proof :page_facing_up: :point_left:

sambit-giri commented 4 years ago

Dear @danielskatz

I have edited "21 cm" in the paper wherever needed. I have also changed the title of the zenodo archive.

Best, Sambit