Skip to content
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,4 +46,4 @@ Checklist
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged and published in downstream modules
- [ ] Add a note to ``Changelog.rst``, summarising the changes
- [ ] Add yourself to ``AUTHORS.rst`` and ``.zenodo.json``
- [ ] Add yourself to ``AUTHORS.rst`` and ``CITATION.cff``
4 changes: 2 additions & 2 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,5 +39,5 @@ jobs:
- name: Check documentation links
run: sphinx-build -b linkcheck docs dist/docs

- name: Load .zenodo.json to check for errors
run: python -c "import json; json.loads(open('.zenodo.json').read())"
- name: Validate CITATION.cff
uses: dieghernan/cff-validator@v4
77 changes: 37 additions & 40 deletions .zenodo.json
Original file line number Diff line number Diff line change
@@ -1,65 +1,62 @@
{
"license": {
"id": "MIT"
},
"notes": "When referencing this package, please cite both the package DOI and the Apex Coordinates journal article: Emmert, J. T., A. D. Richmond, and D. P. Drob (2010), A computationally compact representation of Magnetic-Apex and Quasi-Dipole coordinates with smooth base vectors, J. Geophys. Res., 115(A8), A08322, doi:10.1029/2010JA015326.",
"references": [
"Emmert, J. T., A. D. Richmond, and D. P. Drob (2010), A computationally compact representation of Magnetic-Apex and Quasi-Dipole coordinates with smooth base vectors, J. Geophys. Res., 115(A8), A08322, doi:10.1029/2010JA015326.",
"Richmond, A. D. (1995), Ionospheric Electrodynamics Using Magnetic Apex Coordinates, Journal of geomagnetism and geoelectricity, 47(2), 191–212, doi:10.5636/jgg.47.191."
],
"keywords": [
"Magnetic Apex Coordinates",
"Quasi Dipole Coordinates",
"MLT",
"Magnetic Local Time",
"Conversion",
"Coordinate Conversion",
"Converting",
"Ionosphere",
"Magnetic Field",
"Space Physics",
"Heliophysics"
],
"creators": [
{
"orcid": "0000-0002-8043-0953",
"name": "van der Meeren, Christer"
"name": "van der Meeren, Christer",
"orcid": "0000-0002-8043-0953"
},
{
"orcid": "0000-0001-5028-4943",
"name": "Laundal, Karl M."
"name": "Laundal, Karl M.",
"orcid": "0000-0001-5028-4943"
},
{
"orcid": "0000-0001-8875-9326",
"affiliation": "Naval Research Laboratory",
"name": "Burrell, Angeline G."
"name": "Burrell, Angeline G.",
"orcid": "0000-0001-8875-9326"
},
{
"orcid": "0000-0001-7098-0524",
"name": "Lamarche, Leslie L."
"name": "Lamarche, Leslie L.",
"orcid": "0000-0001-7098-0524"
},
{
"orcid": "0000-0002-3487-3630",
"name": "Starr, Gregory"
"name": "Starr, Gregory",
"orcid": "0000-0002-3487-3630"
},
{
"orcid": "0000-0002-4621-3453",
"name": "Reimer, Ashton S."
"name": "Reimer, Ashton S.",
"orcid": "0000-0002-4621-3453"
},
{
"orcid": "0000-0001-7955-4441",
"affiliation": "GFZ German Research Centre for Geosciences",
"name": "Morschhauser, Achim"
"name": "Morschhauser, Achim",
"orcid": "0000-0001-7955-4441"
},
{
"orcid": "0000-0001-9741-4063",
"affiliation": "GFZ German Research Centre for Geosciences",
"name": "Michaelis, Ingo"
"name": "Michaelis, Ingo",
"orcid": "0000-0001-9741-4063"
},
{
"orcid": "0000-0001-8321-6074",
"affiliation": "Goddard Space Flight Center",
"name": "Klenzing, Jeff"
"name": "Klenzing, Jeff",
"orcid": "0000-0001-8321-6074"
}
]
],
"keywords": [
"Magnetic Apex Coordinates",
"Quasi Dipole Coordinates",
"MLT",
"Magnetic Local Time",
"Conversion",
"Coordinate Conversion",
"Converting",
"Ionosphere",
"Magnetic Field",
"Space Physics",
"Heliophysics"
],
"license": {
"id": "MIT"
},
"title": "apexpy",
"version": "2.1.0"
}
2 changes: 2 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ Changelog
------------------
* Updated GitHub Actions versions and removed unused wheel upload
* Fixed broken doc link
* Added CITATION.cff as primary reference file
* Included info in maintenance doc on how to generate .zenodo.json from CITATION.cff

2.1.0 (2025-01-07)
------------------
Expand Down
83 changes: 83 additions & 0 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
cff-version: 1.2.0
message: "When referencing this package, please cite both the package DOI and the Apex Coordinates journal article: Emmert, J. T., A. D. Richmond, and D. P. Drob (2010), A computationally compact representation of Magnetic-Apex and Quasi-Dipole coordinates with smooth base vectors, J. Geophys. Res., 115(A8), A08322, doi:10.1029/2010JA015326."
title: apexpy
version: 2.1.0
license: MIT
type: software
repository-code: "https://github.com/aburrell/apexpy"
authors:
- family-names: "Meeren"
given-names: "Christer"
name-particle: "van der"
orcid: "https://orcid.org/0000-0002-8043-0953"
- family-names: "Laundal"
given-names: "Karl M."
orcid: "https://orcid.org/0000-0001-5028-4943"
- family-names: "Burrell"
given-names: "Angeline G."
affiliation: "Naval Research Laboratory"
orcid: "https://orcid.org/0000-0001-8875-9326"
- family-names: "Lamarche"
given-names: "Leslie L."
orcid: "https://orcid.org/0000-0001-7098-0524"
- family-names: "Starr"
given-names: "Gregory"
orcid: "https://orcid.org/0000-0002-3487-3630"
- family-names: "Reimer"
given-names: "Ashton S."
orcid: "https://orcid.org/0000-0002-4621-3453"
- family-names: "Morschhauser"
given-names: "Achim"
affiliation: "GFZ German Research Centre for Geosciences"
orcid: "https://orcid.org/0000-0001-7955-4441"
- family-names: "Michaelis"
given-names: "Ingo"
affiliation: "GFZ German Research Centre for Geosciences"
orcid: "https://orcid.org/0000-0001-9741-4063"
- family-names: "Klenzing"
given-names: "Jeff"
affiliation: "Goddard Space Flight Center"
orcid: "https://orcid.org/0000-0001-8321-6074"
identifiers:
- type: doi
value: "10.5281/zenodo.1214206"
keywords:
- "Magnetic Apex Coordinates"
- "Quasi Dipole Coordinates"
- "MLT"
- "Magnetic Local Time"
- "Conversion"
- "Coordinate Conversion"
- "Converting"
- "Ionosphere"
- "Magnetic Field"
- "Space Physics"
- "Heliophysics"
references:
- authors:
- family-names: "Emmert"
given-names: "J. T."
- family-names: "Richmond"
given-names: "A. D."
- family-names: "Drob"
given-names: "D. P."
doi: "10.1029/2010JA015326"
title: "A computationally compact representation of Magnetic-Apex and Quasi-Dipole coordinates with smooth base vectors"
journal: "J. Geophys. Res."
scope: "Cite this paper alongside the package."
type: "article"
volume: "115"
issue: "A8"
pages: "A08322"
year: "2010"
- authors:
- family-names: "Richmond"
given-names: "A. D."
doi: "10.5636/jgg.47.191"
title: "Ionospheric Electrodynamics Using Magnetic Apex Coordinates"
type: "article"
journal: "Journal of Geomagnetism and Geoelectricity"
volume: "47"
issue: "2"
pages: "191–212"
year: "1995"
2 changes: 1 addition & 1 deletion CONTRIBUTING.rst
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ For merging, you should:
1. Include passing tests for your changes
2. Update/add documentation if relevant
3. Add a note to ``CHANGELOG.rst`` about the changes
4. Add yourself to ``AUTHORS.rst`` and ``.zenodo.json`` with your
4. Add yourself to ``AUTHORS.rst`` and ``CITATION.cff`` with your
`ORCiD <https://orcid.org/>`_

Style Guidelines
Expand Down
1 change: 1 addition & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ recursive-include apexpy *.txt apexsh.dat meson.build
include *.rst
include *.md
include LICENSE
include CITATION.cff
include .zenodo.json
include pyproject.toml
include .codeclimate.yml *.yml
17 changes: 7 additions & 10 deletions docs/maintenance.rst
Original file line number Diff line number Diff line change
@@ -1,14 +1,11 @@
Package Maintenance
===================

Providing Wheels with Releases
------------------------------
Updating docs for version release
---------------------------------
Before release, the zenodo file can be auto-updated from the CITATION.cff file using cffconvert::

The Continuous Integration (CI) now saves wheels created for each tested Python
version and computer Operating System (OS) as artifacts. When preparing a new
PyPi release, these wheels may be downloaded from the release candidate. We
currently don't include them, because the wheels only work when the installation
environment mirrors the CI environment.
cffconvert -f zenodo -i CITATION.cff -o .zenodo.json

Updating IGRF
-------------
Expand All @@ -18,7 +15,7 @@ is regularly updated to reflect the most recent changes to the Terrestrial
magnetic field. apexpy currently uses IRGF-14 coefficients, which are provided
in the ``apexpy/apexpy/igrf14coeff.txt`` file. To change or update the
magnetic field coefficients used by apexpy, you need to update the python code,
then rerun the fortran program that builds ``apexpy/apexpy/apexsh.dat``. This
then rerun the fortran program that builds ``apexpy/apexpy/apexsh.dat``. This
is what makes apexpy performant. For more details, see Emmert et al. [2010] [1]_.

Assuming your new coefficient file has the same format, the process is simple:
Expand All @@ -35,12 +32,12 @@ Assuming your new coefficient file has the same format, the process is simple:
and ``epochgrid`` only has up to the year 2025, then add 2030 to
``epochgrid`` and then increment ``nepochgrid`` by 1.
5. Execute the ``apextest`` binary to generate the new ``apexsh.dat`` file.
6. Update the unit tests in the class ``TestApexMethodExtrapolateIGRF`` in
6. Update the unit tests in the class ``TestApexMethodExtrapolateIGRF`` in
``apexpy/apexpy/tests/test_Apex.py`` so that they check the methods are
working correctly with dates after the latest IGRF epoch (i.e., if the
latest epoch is 2025, set the test to initialize with the year 2030). You
will have to update the hard-coded confirmation values used by these tests.
7. Commit all changes and create a pull request on GitHub to integrate your
7. Commit all changes and create a pull request on GitHub to integrate your
branch with updated IGRF into the main repository.

Modifying Fortran Source
Expand Down
Loading