From b1de52ac81158a94aa96391fb36142aa2bafd959 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 29 Dec 2023 15:29:32 +0900 Subject: [PATCH 1/9] Draft paper to JOSS --- .github/workflows/draft-pdf.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 .github/workflows/draft-pdf.yml diff --git a/.github/workflows/draft-pdf.yml b/.github/workflows/draft-pdf.yml new file mode 100644 index 00000000..a7724eb5 --- /dev/null +++ b/.github/workflows/draft-pdf.yml @@ -0,0 +1,23 @@ +on: [push] + +jobs: + paper: + runs-on: ubuntu-latest + name: Paper Draft + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Build draft PDF + uses: openjournals/openjournals-draft-action@master + with: + journal: joss + # This should be the path to the paper within your repo. + paper-path: joss/paper.md + - name: Upload + uses: actions/upload-artifact@v1 + with: + name: paper + # This is the output path where Pandoc will write the compiled + # PDF. Note, this should be the same directory as the input + # paper.md + path: joss/paper.pdf From 13d508605005242eec5ab249b37ba84b94832f79 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 29 Dec 2023 15:30:27 +0900 Subject: [PATCH 2/9] Create paper.bib --- joss/paper.bib | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 joss/paper.bib diff --git a/joss/paper.bib b/joss/paper.bib new file mode 100644 index 00000000..4e4544a4 --- /dev/null +++ b/joss/paper.bib @@ -0,0 +1,59 @@ +@article{Pearson:2017, + url = {http://adsabs.harvard.edu/abs/2017arXiv170304627P}, + Archiveprefix = {arXiv}, + Author = {{Pearson}, S. and {Price-Whelan}, A.~M. and {Johnston}, K.~V.}, + Eprint = {1703.04627}, + Journal = {ArXiv e-prints}, + Keywords = {Astrophysics - Astrophysics of Galaxies}, + Month = mar, + Title = {{Gaps in Globular Cluster Streams: Pal 5 and the Galactic Bar}}, + Year = 2017 +} + +@book{Binney:2008, + url = {http://adsabs.harvard.edu/abs/2008gady.book.....B}, + Author = {{Binney}, J. and {Tremaine}, S.}, + Booktitle = {Galactic Dynamics: Second Edition, by James Binney and Scott Tremaine.~ISBN 978-0-691-13026-2 (HB).~Published by Princeton University Press, Princeton, NJ USA, 2008.}, + Publisher = {Princeton University Press}, + Title = {{Galactic Dynamics: Second Edition}}, + Year = 2008 +} + +@article{gaia, + author = {{Gaia Collaboration}}, + title = "{The Gaia mission}", + journal = {Astronomy and Astrophysics}, + archivePrefix = "arXiv", + eprint = {1609.04153}, + primaryClass = "astro-ph.IM", + keywords = {space vehicles: instruments, Galaxy: structure, astrometry, parallaxes, proper motions, telescopes}, + year = 2016, + month = nov, + volume = 595, + doi = {10.1051/0004-6361/201629272}, + url = {http://adsabs.harvard.edu/abs/2016A%26A...595A...1G}, +} + +@article{astropy, + author = {{Astropy Collaboration}}, + title = "{Astropy: A community Python package for astronomy}", + journal = {Astronomy and Astrophysics}, + archivePrefix = "arXiv", + eprint = {1307.6212}, + primaryClass = "astro-ph.IM", + keywords = {methods: data analysis, methods: miscellaneous, virtual observatory tools}, + year = 2013, + month = oct, + volume = 558, + doi = {10.1051/0004-6361/201322068}, + url = {http://adsabs.harvard.edu/abs/2013A%26A...558A..33A} +} + +@misc{fidgit, + author = {A. M. Smith and K. Thaney and M. Hahnel}, + title = {Fidgit: An ungodly union of GitHub and Figshare}, + year = {2020}, + publisher = {GitHub}, + journal = {GitHub repository}, + url = {https://github.com/arfon/fidgit} +} From e27b75dcb879dd174e0382b06b2f94cde731a434 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 29 Dec 2023 15:31:09 +0900 Subject: [PATCH 3/9] Create paper.md --- joss/paper.md | 119 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 joss/paper.md diff --git a/joss/paper.md b/joss/paper.md new file mode 100644 index 00000000..99c554fa --- /dev/null +++ b/joss/paper.md @@ -0,0 +1,119 @@ +--- +title: 'Gala: A Python package for galactic dynamics' +tags: + - Python + - astronomy + - dynamics + - galactic dynamics + - milky way +authors: + - name: Adrian M. Price-Whelan + orcid: 0000-0000-0000-0000 + equal-contrib: true + affiliation: "1, 2" # (Multiple affiliations must be quoted) + - name: Author Without ORCID + equal-contrib: true # (This is how you can denote equal contributions between multiple authors) + affiliation: 2 + - name: Author with no affiliation + corresponding: true # (This is how to denote the corresponding author) + affiliation: 3 + - given-names: Ludwig + dropping-particle: van + surname: Beethoven + affiliation: 3 +affiliations: + - name: Lyman Spitzer, Jr. Fellow, Princeton University, USA + index: 1 + - name: Institution Name, Country + index: 2 + - name: Independent Researcher, Country + index: 3 +date: 13 August 2017 +bibliography: paper.bib + +# Optional fields if submitting to a AAS journal too, see this blog post: +# https://blog.joss.theoj.org/2018/12/a-new-collaboration-with-aas-publishing +aas-doi: 10.3847/xxxxx <- update this with the DOI from AAS once you know it. +aas-journal: Astrophysical Journal <- The name of the AAS journal. +--- + +# Summary + +The forces on stars, galaxies, and dark matter under external gravitational +fields lead to the dynamical evolution of structures in the universe. The orbits +of these bodies are therefore key to understanding the formation, history, and +future state of galaxies. The field of "galactic dynamics," which aims to model +the gravitating components of galaxies to study their structure and evolution, +is now well-established, commonly taught, and frequently used in astronomy. +Aside from toy problems and demonstrations, the majority of problems require +efficient numerical tools, many of which require the same base code (e.g., for +performing numerical orbit integration). + +# Statement of need + +`Gala` is an Astropy-affiliated Python package for galactic dynamics. Python +enables wrapping low-level languages (e.g., C) for speed without losing +flexibility or ease-of-use in the user-interface. The API for `Gala` was +designed to provide a class-based and user-friendly interface to fast (C or +Cython-optimized) implementations of common operations such as gravitational +potential and force evaluation, orbit integration, dynamical transformations, +and chaos indicators for nonlinear dynamics. `Gala` also relies heavily on and +interfaces well with the implementations of physical units and astronomical +coordinate systems in the `Astropy` package [@astropy] (`astropy.units` and +`astropy.coordinates`). + +`Gala` was designed to be used by both astronomical researchers and by +students in courses on gravitational dynamics or astronomy. It has already been +used in a number of scientific publications [@Pearson:2017] and has also been +used in graduate courses on Galactic dynamics to, e.g., provide interactive +visualizations of textbook material [@Binney:2008]. The combination of speed, +design, and support for Astropy functionality in `Gala` will enable exciting +scientific explorations of forthcoming data releases from the *Gaia* mission +[@gaia] by students and experts alike. + +# Mathematics + +Single dollars ($) are required for inline mathematics e.g. $f(x) = e^{\pi/x}$ + +Double dollars make self-standing equations: + +$$\Theta(x) = \left\{\begin{array}{l} +0\textrm{ if } x < 0\cr +1\textrm{ else} +\end{array}\right.$$ + +You can also use plain \LaTeX for equations +\begin{equation}\label{eq:fourier} +\hat f(\omega) = \int_{-\infty}^{\infty} f(x) e^{i\omega x} dx +\end{equation} +and refer to \autoref{eq:fourier} from text. + +# Citations + +Citations to entries in paper.bib should be in +[rMarkdown](http://rmarkdown.rstudio.com/authoring_bibliographies_and_citations.html) +format. + +If you want to cite a software repository URL (e.g. something on GitHub without a preferred +citation) then you can do it with the example BibTeX entry below for @fidgit. + +For a quick reference, the following citation commands can be used: +- `@author:2001` -> "Author et al. (2001)" +- `[@author:2001]` -> "(Author et al., 2001)" +- `[@author1:2001; @author2:2001]` -> "(Author1 et al., 2001; Author2 et al., 2002)" + +# Figures + +Figures can be included like this: +![Caption for example figure.\label{fig:example}](figure.png) +and referenced from text using \autoref{fig:example}. + +Figure sizes can be customized by adding an optional second parameter: +![Caption for example figure.](figure.png){ width=20% } + +# Acknowledgements + +We acknowledge contributions from Brigitta Sipocz, Syrtis Major, and Semyeong +Oh, and support from Kathryn Johnston during the genesis of this project. + +# References From 288888fe738395fc06f968233d148ab6a04836d4 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jan 2024 08:46:47 +0000 Subject: [PATCH 4/9] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- joss/paper.md | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/joss/paper.md b/joss/paper.md index 99c554fa..c411b254 100644 --- a/joss/paper.md +++ b/joss/paper.md @@ -1,5 +1,5 @@ --- -title: 'Gala: A Python package for galactic dynamics' +title: "Gala: A Python package for galactic dynamics" tags: - Python - astronomy @@ -22,12 +22,12 @@ authors: surname: Beethoven affiliation: 3 affiliations: - - name: Lyman Spitzer, Jr. Fellow, Princeton University, USA - index: 1 - - name: Institution Name, Country - index: 2 - - name: Independent Researcher, Country - index: 3 + - name: Lyman Spitzer, Jr. Fellow, Princeton University, USA + index: 1 + - name: Institution Name, Country + index: 2 + - name: Independent Researcher, Country + index: 3 date: 13 August 2017 bibliography: paper.bib @@ -68,7 +68,7 @@ used in a number of scientific publications [@Pearson:2017] and has also been used in graduate courses on Galactic dynamics to, e.g., provide interactive visualizations of textbook material [@Binney:2008]. The combination of speed, design, and support for Astropy functionality in `Gala` will enable exciting -scientific explorations of forthcoming data releases from the *Gaia* mission +scientific explorations of forthcoming data releases from the _Gaia_ mission [@gaia] by students and experts alike. # Mathematics @@ -77,14 +77,16 @@ Single dollars ($) are required for inline mathematics e.g. $f(x) = e^{\pi/x}$ Double dollars make self-standing equations: -$$\Theta(x) = \left\{\begin{array}{l} +$$ +\Theta(x) = \left\{\begin{array}{l} 0\textrm{ if } x < 0\cr 1\textrm{ else} -\end{array}\right.$$ +\end{array}\right. +$$ You can also use plain \LaTeX for equations \begin{equation}\label{eq:fourier} -\hat f(\omega) = \int_{-\infty}^{\infty} f(x) e^{i\omega x} dx +\hat f(\omega) = \int\_{-\infty}^{\infty} f(x) e^{i\omega x} dx \end{equation} and refer to \autoref{eq:fourier} from text. @@ -98,7 +100,8 @@ If you want to cite a software repository URL (e.g. something on GitHub without citation) then you can do it with the example BibTeX entry below for @fidgit. For a quick reference, the following citation commands can be used: -- `@author:2001` -> "Author et al. (2001)" + +- `@author:2001` -> "Author et al. (2001)" - `[@author:2001]` -> "(Author et al., 2001)" - `[@author1:2001; @author2:2001]` -> "(Author1 et al., 2001; Author2 et al., 2002)" From 19cc30cda33dbbdab67c593a2de5406072005dba Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Mon, 22 Jan 2024 17:50:21 +0900 Subject: [PATCH 5/9] Update draft-pdf.yml --- .github/workflows/draft-pdf.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/draft-pdf.yml b/.github/workflows/draft-pdf.yml index a7724eb5..59f11568 100644 --- a/.github/workflows/draft-pdf.yml +++ b/.github/workflows/draft-pdf.yml @@ -1,9 +1,9 @@ +name: Paper Draft on: [push] jobs: paper: runs-on: ubuntu-latest - name: Paper Draft steps: - name: Checkout uses: actions/checkout@v4 From 4f3c676a4945fcde78db109ff92a63569312e62a Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Mon, 22 Jan 2024 17:51:45 +0900 Subject: [PATCH 6/9] Update .pre-commit-config.yaml --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 0d4b6c81..7bcd4333 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -58,7 +58,7 @@ repos: rev: "v2.2.6" hooks: - id: codespell - args: ["-L", "sur,nd"] + args: ["-L", "ass,"] - repo: https://github.com/pre-commit/pygrep-hooks rev: "v1.10.0" hooks: From fe7a3f0bfc4dc79af1b92377da17ebb3b89aeeb3 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Mon, 22 Jan 2024 17:52:26 +0900 Subject: [PATCH 7/9] Update .pre-commit-config.yaml --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 7bcd4333..deb404f5 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -58,7 +58,7 @@ repos: rev: "v2.2.6" hooks: - id: codespell - args: ["-L", "ass,"] + args: ["-L", "aas,"] - repo: https://github.com/pre-commit/pygrep-hooks rev: "v1.10.0" hooks: From f1fcd92ec907213761c6c3b2a22ba619890b7725 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 30 Jan 2024 23:11:20 +0000 Subject: [PATCH 8/9] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- joss/paper.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/joss/paper.md b/joss/paper.md index c411b254..9e70de14 100644 --- a/joss/paper.md +++ b/joss/paper.md @@ -1,3 +1,17 @@ + + +**Table of Contents** *generated with [DocToc](https://github.com/thlorenz/doctoc)* + +- [Summary](#summary) +- [Statement of need](#statement-of-need) +- [Mathematics](#mathematics) +- [Citations](#citations) +- [Figures](#figures) +- [Acknowledgements](#acknowledgements) +- [References](#references) + + + --- title: "Gala: A Python package for galactic dynamics" tags: From 835d56552133ae5007bdff17d6aac3bebed85307 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu, 1 Feb 2024 01:22:38 +0000 Subject: [PATCH 9/9] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- joss/paper.md | 66 ++++++++++++++++++++++++++++----------------------- 1 file changed, 36 insertions(+), 30 deletions(-) diff --git a/joss/paper.md b/joss/paper.md index 9e70de14..050a4b7e 100644 --- a/joss/paper.md +++ b/joss/paper.md @@ -1,7 +1,8 @@ -**Table of Contents** *generated with [DocToc](https://github.com/thlorenz/doctoc)* +- [Optional fields if submitting to a AAS journal too, see this blog post:](#optional-fields-if-submitting-to-a-aas-journal-too-see-this-blog-post) +- [https://blog.joss.theoj.org/2018/12/a-new-collaboration-with-aas-publishing](#httpsblogjosstheojorg201812a-new-collaboration-with-aas-publishing) - [Summary](#summary) - [Statement of need](#statement-of-need) - [Mathematics](#mathematics) @@ -13,42 +14,47 @@ --- + title: "Gala: A Python package for galactic dynamics" tags: - - Python - - astronomy - - dynamics - - galactic dynamics - - milky way -authors: - - name: Adrian M. Price-Whelan - orcid: 0000-0000-0000-0000 - equal-contrib: true - affiliation: "1, 2" # (Multiple affiliations must be quoted) - - name: Author Without ORCID - equal-contrib: true # (This is how you can denote equal contributions between multiple authors) - affiliation: 2 - - name: Author with no affiliation - corresponding: true # (This is how to denote the corresponding author) - affiliation: 3 - - given-names: Ludwig - dropping-particle: van - surname: Beethoven - affiliation: 3 -affiliations: - - name: Lyman Spitzer, Jr. Fellow, Princeton University, USA - index: 1 - - name: Institution Name, Country - index: 2 - - name: Independent Researcher, Country - index: 3 -date: 13 August 2017 -bibliography: paper.bib + +- Python +- astronomy +- dynamics +- galactic dynamics +- milky way + authors: +- name: Adrian M. Price-Whelan + orcid: 0000-0000-0000-0000 + equal-contrib: true + affiliation: "1, 2" # (Multiple affiliations must be quoted) +- name: Author Without ORCID + equal-contrib: true # (This is how you can denote equal contributions between multiple authors) + affiliation: 2 +- name: Author with no affiliation + corresponding: true # (This is how to denote the corresponding author) + affiliation: 3 +- given-names: Ludwig + dropping-particle: van + surname: Beethoven + affiliation: 3 + affiliations: +- name: Lyman Spitzer, Jr. Fellow, Princeton University, USA + index: 1 +- name: Institution Name, Country + index: 2 +- name: Independent Researcher, Country + index: 3 + date: 13 August 2017 + bibliography: paper.bib # Optional fields if submitting to a AAS journal too, see this blog post: + # https://blog.joss.theoj.org/2018/12/a-new-collaboration-with-aas-publishing + aas-doi: 10.3847/xxxxx <- update this with the DOI from AAS once you know it. aas-journal: Astrophysical Journal <- The name of the AAS journal. + --- # Summary