Skip to main content

A Python wrapper for AACGM-v2 magnetic coordinates

Project description

Documentation Status PyPI Package latest release doi

This is a Python wrapper for the AACGM-v2 C library, which allows converting between geographic and magnetic coordinates. The currently included version of the C library is 2.5. The package is free software (MIT license). When referencing this package, please cite both the package DOI and the AACGM-v2 journal article:

Shepherd, S. G. (2014), Altitude‐adjusted corrected geomagnetic coordinates: Definition and functional approximations, Journal of Geophysical Research: Space Physics, 119, 7501–7521, doi:10.1002/2014JA020264.

Quick start

Install (requires NumPy):

pip install aacgmv2

Convert between AACGM and geographic coordinates:

>>> import aacgmv2
>>> import datetime as dt
>>> import numpy as np
>>> np.set_printoptions(formatter={'float_kind': lambda x:'{:.4f}'.format(x)})
>>> # geo to AACGM, single numbers
>>> dtime = dt.datetime(2013, 11, 3)
>>> np.array(aacgmv2.get_aacgm_coord(60, 15, 300, dtime))
array([57.4698, 93.6300, 1.4822])
>>> # AACGM to geo, mix arrays/numbers
>>> aacgmv2.convert_latlon_arr([90, -90], 0, 0, dtime, method_code="A2G")
(array([82.9666, -74.3385]), array([-84.6652, 125.8401]), array([14.1244, 12.8771]))

Convert between AACGM and MLT:

>>> import aacgmv2
>>> import datetime as dt
>>> import numpy as np
>>> np.set_printoptions(formatter={'float_kind': lambda x:'{:.4f}'.format(x)})
>>> # MLT to AACGM
>>> dtime = dt.datetime(2013, 11, 3, 0, 0, 0)
>>> aacgmv2.convert_mlt([1.4822189, 12], dtime, m2a=True)
array([93.6300, -108.6033])

If you don’t know or use Python, you can also use the command line. See details in the full documentation.

Documentation

https://aacgmv2.readthedocs.org/

http://superdarn.thayer.dartmouth.edu/aacgm.html

Badges

docs

Documentation Status

tests

Travis-CI Build Status AppVeyor Build Status Requirements Status
Code Quality Status CodeClimate Quality Status
Scrutinizer Status Codacy Code Quality Status

package

PyPI Package latest release Supported versions
PyPI Wheel Supported implementations

Changelog

2.5.2 (2019-08-27)

  • Added FutureWarning to deprecated functions

  • Updated names in licenses

  • Moved module structure routine tests to their own class

  • Added high altitude limit to avoid while-loop hanging

  • Changed version support to 2.7, 3.6, and 3.7

  • Removed logbook dependency

  • Added logic to avoid reseting environment variables if not necessary

  • Added copyright and license disclaimer to module-specific program files

2.5.1 (2018-10-19)

  • Commented out debug statement in C code

  • Updated environment variable warning to output to stderr instead of stdout

  • Added templates for pull requests, issues, and a code of conduct

2.5.0 (2018-08-08)

  • Updated C code and coefficients to version 2.5. Changes in python code reflect changes in C code (includes going back to using environment variables instead of strings for coefficient file locations)

  • Added decorators to some of the test functions

  • Specified AppVeyor Visual Studio version, since it was defaulting to 2010 and that version doesn’t work with python 3

2.4.2 (2018-05-21)

  • Fixed bug in convert_mlt that caused all time inputs to occur at 00:00:00 UT

  • Fixed year of last two updates in changelog

2.4.1 (2018-04-04)

  • Fix bug in installation that caused files to be placed in the wrong directory

  • Added DOI

2.4.0 (2018-03-21)

  • Update to use AACGM-v2.4, which includes changes to the inverse MLT and dipole tilt functions and some minor bug fixes

  • Updated file structure

  • Updated methods, retaining old methods in deprecated module

  • Added testing for python 3.6

  • Updated dependencies, removing support for python 3.3

  • Tested on Mac OSX

  • Updated comments to include units for input and output

2.0.0 (2016-11-03)

  • Change method of calculating MLT, see documentation of convert_mlt for details

1.0.13 (2015-10-30)

  • Correctly convert output of subsol() to geodetic coordinates (the error in MLT/mlon conversion was not large, typically two decimal places and below)

1.0.12 (2015-10-26)

  • Return nan in forbidden region instead of throwing exception

1.0.11 (2015-10-26)

  • Fix bug in subsolar/MLT conversion

1.0.10 (2015-10-08)

  • No code changes, debugged automatic build/upload process and needed new version numbers along the way

1.0.0 (2015-10-07)

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aacgmv2-2.5.2.tar.gz (1.6 MB view details)

Uploaded Source

Built Distributions

aacgmv2-2.5.2-cp37-cp37m-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.7m macOS 10.12+ x86-64

aacgmv2-2.5.2-cp36-cp36m-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.6m macOS 10.12+ x86-64

aacgmv2-2.5.2-cp27-cp27m-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 2.7m macOS 10.12+ x86-64

File details

Details for the file aacgmv2-2.5.2.tar.gz.

File metadata

  • Download URL: aacgmv2-2.5.2.tar.gz
  • Upload date:
  • Size: 1.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/41.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/2.7.16

File hashes

Hashes for aacgmv2-2.5.2.tar.gz
Algorithm Hash digest
SHA256 48639e3d5fe9d8cef8de9b4f7938399d84868c8dd86041468d494c3ee3b1c23f
MD5 c3058e470fac8d3fdcc8deb54597ce97
BLAKE2b-256 921585589a8c9c9179686da05448cb70cc193cee387b439617385e206090a6df

See more details on using hashes here.

File details

Details for the file aacgmv2-2.5.2-cp37-cp37m-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: aacgmv2-2.5.2-cp37-cp37m-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 3.7m, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/41.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/2.7.16

File hashes

Hashes for aacgmv2-2.5.2-cp37-cp37m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8e37abe70ad1634c50a488ad56684f08c946da6477137fb006b4b7293c11a097
MD5 4ed9661ffc703192207a3c3194905f08
BLAKE2b-256 8f7cfbd12ca03ecc1a5538bf902ba60144621f268395ae52dea3d4e62766e89b

See more details on using hashes here.

File details

Details for the file aacgmv2-2.5.2-cp36-cp36m-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: aacgmv2-2.5.2-cp36-cp36m-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 3.6m, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/41.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/2.7.16

File hashes

Hashes for aacgmv2-2.5.2-cp36-cp36m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3c7b3d10423da87ffeb6f1915f7d57c4b56112f3d1907083bce6ebb13074c480
MD5 99251bfaf5415377ec0a2bf0ad22650b
BLAKE2b-256 97854c1b30013bc0ae6101520225e8757be7a388ff1a91db0209a908ce4e6eea

See more details on using hashes here.

File details

Details for the file aacgmv2-2.5.2-cp27-cp27m-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: aacgmv2-2.5.2-cp27-cp27m-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 2.7m, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/41.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/2.7.16

File hashes

Hashes for aacgmv2-2.5.2-cp27-cp27m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 633d115531f1c4e5d6e2a90a9e66ff43b0311178bb15e1e37e32b165f080ade0
MD5 417588a3c292d489dae77482a00dae2d
BLAKE2b-256 26aca676d977431285eef5fe754d6c8db742bea787d3b54b64563fe58f00376d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page