Metadata-Version: 2.1
Name: apexpy
Version: 1.1.0
Summary: "A Python wrapper for Apex coordinates"
Home-page: https://github.com/aburrell/apexpy
Author: Crister van der Meeren, et al.
Author-email: angeline.burrell@nrll.navy.mil
License: MIT
Description: ========
        Overview
        ========
        
        |docs| |version| |doi|
        
        This is a Python wrapper for the Apex fortran library by
        Emmert et al. [2010] [1]_, which allows converting between geodetic, modified
        apex, and quasi-dipole coordinates as well as getting modified apex and
        quasi-dipole base vectors (Richmond [1995] [2]_). The geodetic system used here
        is WGS84. MLT calculations are also included. The package is free software
        (MIT license).
        
        Quick start
        ===========
        
        Install from PyPI using ``pip``::
        
            pip install apexpy
        
        This assumes that the same version of libgfortran is installed in the same
        location as when the pip wheel was built (if a wheel was used). If not, you may
        have trouble importing apexpy.  If you run into trouble, try the command::
        
            pip install --no-binary :apexpy: apexpy
        
        which requires both libgfortran and gfortran to be installed on your system.
        
        Conversion is done by creating an ``Apex`` object and using its methods to
        perform the desired calculations. Some simple examples::
        
            >>> from apexpy import Apex
            >>> from __future__ import print_function
            >>> A = Apex(date=2015.3)  # datetime objects are also supported
            >>> # geo to apex, scalar input
            >>> mlat, mlon = A.convert(60, 15, 'geo', 'apex', height=300)
            >>> print("{:.12f}, {:.12f}".format(mlat, mlon))
            57.477310180664, 93.590156555176
            >>> # apex to geo, array input
            >>> glat, glon = A.convert([90, -90], 0, 'apex', 'geo', height=0)
            >>> print(["{:.12f}, {:.12f}".format(ll, glon[i]) for i,ll in enumerate(glat)])
            ['83.103820800781, -84.526657104492', '-74.388252258301, 125.736274719238']
            >>> # geo to MLT
            >>> import datetime as dt
            >>> mlat, mlt = A.convert(60, 15, 'geo', 'mlt', datetime=dt.datetime(2015, 2, 10, 18, 0, 0))
            >>> print("{:.12f}, {:.12f}".format(mlat, mlt))
            56.598316192627, 19.107861709595
            >>> # can also convert magnetic longitude to mlt
            >>> mlt = A.mlon2mlt(120, dt.datetime(2015, 2, 10, 18, 0, 0))
            >>> print("{:.2f}".format(mlt))
            20.90
        
        If you don't know or use Python, you can also use the command line. See details in the full documentation.
        
        Documentation
        =============
        
        https://apexpy.readthedocs.org/
        
        References
        ==========
        
        .. [1] 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 <http://dx.doi.org/10.1029/2010JA015326>`_.
        
        .. [2] 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 <http://dx.doi.org/10.5636/jgg.47.191>`_.
        
        Badges
        ======
        
        .. list-table::
            :stub-columns: 1
        
            * - docs
              - |docs|
            * - tests
              - | |travis| |appveyor|
                | |coveralls| |requires|
                | |codeclimate| |scrutinizer| |codacy|
            * - package
              - | |version| |supported-versions|
                | |wheel| |supported-implementations|
        
        .. |docs| image:: https://readthedocs.org/projects/apexpy/badge/?style=flat
            :target: https://readthedocs.org/projects/apexpy
            :alt: Documentation Status
        
        .. |travis| image:: https://travis-ci.org/aburrell/apexpy.svg?branch=main
            :alt: Travis-CI Build Status
            :target: https://travis-ci.org/aburrell/apexpy
        
        .. |appveyor| image:: https://ci.appveyor.com/api/projects/status/github/aburrell/apexpy?branch=main&svg=true
            :alt: AppVeyor Build Status
            :target: https://ci.appveyor.com/project/aburrell/apexpy
        
        .. |requires| image:: https://requires.io/github/aburrell/apexpy/requirements.svg?branch=main
             :alt: Requirements Status
             :target: https://requires.io/github/aburrell/apexpy/requirements/?branch=main
        
        .. |coveralls| image:: https://coveralls.io/repos/github/aburrell/apexpy/badge.svg?branch=main
            :alt: Coverage Status
            :target: https://coveralls.io/github/aburrell/apexpy?branch=main
        
        .. |codacy| image:: https://api.codacy.com/project/badge/Grade/7d4c1a6c60e747ca95cdf97746c39cda
           :alt: Codacy Badge
           :target: https://app.codacy.com/gh/aburrell/apexpy?utm_source=github.com&utm_medium=referral&utm_content=aburrell/apexpy&utm_campaign=Badge_Grade
        
        .. |codeclimate| image:: https://api.codeclimate.com/v1/badges/da1d972dee790da595f8/maintainability.svg
           :target: https://codeclimate.com/github/aburrell/apexpy
           :alt: CodeClimate Quality Status
        
        .. |version| image:: https://img.shields.io/pypi/v/apexpy.svg?style=flat
            :alt: PyPI Package latest release
            :target: https://pypi.python.org/pypi/apexpy
        
        .. |downloads| image:: https://img.shields.io/pypi/dm/apexpy.svg?style=flat
            :alt: PyPI Package monthly downloads
            :target: https://pypi.python.org/pypi/apexpy
        
        .. |wheel| image:: https://img.shields.io/pypi/wheel/apexpy.svg?style=flat
            :alt: PyPI Wheel
            :target: https://pypi.python.org/pypi/apexpy
        
        .. |supported-versions| image:: https://img.shields.io/pypi/pyversions/apexpy.svg?style=flat
            :alt: Supported versions
            :target: https://pypi.python.org/pypi/apexpy
        
        .. |supported-implementations| image:: https://img.shields.io/pypi/implementation/apexpy.svg?style=flat
            :alt: Supported implementations
            :target: https://pypi.python.org/pypi/apexpy
        
        .. |scrutinizer| image:: https://img.shields.io/scrutinizer/g/aburrell/apexpy/main.svg?style=flat
            :alt: Scrutinizer Status
            :target: https://scrutinizer-ci.com/g/aburrell/apexpy/
        
        .. |doi| image:: https://www.zenodo.org/badge/46420037.svg
           :target: https://www.zenodo.org/badge/latestdoi/46420037
        
        
        Changelog
        =========
        
        1.1.0 (2021-03-05)
        ------------------
        * Adapted Fortran to read IRGF coefficients from a file (updated to IGRF-13)
        * Improved the subsol routine to allow array input
        * Improved PEP8 compliance
        * Added some missing docstrings to unit tests
        * Fixed AppVeyor test environment
        * Updated python test versions
        * Updated community and package documentation
        * Fixed bug where NaNs caused array input to crash
        * Fixed bug in quasi-dipole to apex conversion at equator
        * Removed duplicate CI services
        
        1.0.4 (2019-04-05)
        ----------------------------------------
        * Updated installation instructions
        * Simplified warning tests
        * Made some PEP8 changes
        
        1.0.3 (2018-04-05)
        -----------------------------------------
        * Updated badges and added DOI
        * Added tests for python 3.6
        * Removed tests for python 3.3
        * Made some PEP8 changes
        
        1.0.2 (2018-02-27)
        -----------------------------------------
        
        * Extend character limit for allowable data file path, and update documentation
          to reflect a change in maintainers.  Also updated testing implimentation,
          reduced fortran compiler warnings, and improved PEP8 compliance.
        
        1.0.1 (2016-03-10)
        -----------------------------------------
        
        * Remove geocentric to geodetic conversion of subsolar point based on feedback
          from Art Richmond. (The subsolar point is the same in geocentric and geodetic
          coordinates.) The helper function `gc2gdlat` have been kept to preserve
          backwards compatibility.
        
        
        1.0.0 (2015-11-30)
        -----------------------------------------
        
        * Initial release
        
Keywords: apex,modified apex,quasi-dipole,quasi dipole,coordinates,magnetic coordinates,mlt,magnetic local time,conversion,converting
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: Unix
Classifier: Operating System :: POSIX
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Scientific/Engineering :: Physics
Classifier: Topic :: Utilities
Description-Content-Type: text/x-rst
