Skip to content

Releases: geospace-code/pymap3d

bugfix: ecef2geodetic inside bug from 2.6.0

13 Apr 05:29
9cc82e4
Compare
Choose a tag to compare

when implementing the speedup of 2.6.0, a mistake was made in ecef2geodetic that could cause an exception. This is now fixed thanks to @dschurman

100x speedup for Numpy operations

21 Mar 04:53
853b0be
Compare
Choose a tag to compare

eliminated numpy.vectorize for ~100x speedup of many of the pymap3d functions, while still preserving the "no-Numpy" functionality for scalars.

pypi readme fix, pep621

10 Mar 04:05
64c993c
Compare
Choose a tag to compare
v2.5.1

includes tests in bundle

Python >= 3.7, modernize type annotations

07 Feb 06:11
fc93b77
Compare
Choose a tag to compare

For better internal quality, modernize type annotations in accord with Numpy 1.20 final release.
This requires __future__.annotations, which requires Python >= 3.7.
For many months, Python 3.5 use of pymap3d has been ≪ 1%
Python 3.6 use of pymap3d continues to drop as current Numpy requires Python >= 3.7 as well.

Python 3.5 and 3.6 users can continue to use pymap3d 2.4.x.
If we find any significant bugs, we plan to backport them to pymap3d 2.4.x as long as there is still significant pymap3d usage from Python < 3.7.

prepare for optional Numpy 1.20 type hinting

21 Sep 15:20
56cfad2
Compare
Choose a tag to compare

Numpy 1.20 adds optional type hinting in the numpy.typing module. ArrayLike is a key type we feel appropriate for PyMap3D. PyMap3D will continue to work without Numpy or older versions of Numpy.

We add optional type hinting using numpy.typing.ArrayLike

add codecov, cleanup test

23 Jul 19:34
c2e4d6b
Compare
Choose a tag to compare
  • remove extraneous syntax from tests
  • add codecov

ECI: restore less accurate Numpy-only fallback

10 May 22:25
b5652b8
Compare
Choose a tag to compare

v2.4.0 too boldly removed the non-AstroPy ECI conversions that only require Numpy. However, the Numpy-only fallback can have several percent error due to rotation only being considered. AstroPy considers higher-order effects that greatly increase accuracy of conversions involving ECI (eci2* or *2eci)

This release restores optional status of AstroPy for ECI, but Numpy is still required for ECI as it always has been for PyMap3d.

eci: use AstroPy

23 Apr 20:46
eb18637
Compare
Choose a tag to compare

The ECI calculation error was substantial for some applications due to only considering Earth rotation. Now ECI calculations use AstroPy for better accuracy (< 1% error) considering more factors in the ECI transformations.
Fixes #33

Added geodetic2eci

Added more ECI self-tests

Temporarily pinned CI to Python 3.8 to avoid the usual issues with brand new Python releases not immediately having PyPi wheels for Astropy. We still also test Python 3.5.

return scalars when result is scalar

23 Apr 17:10
98f0a8e
Compare
Choose a tag to compare

also move to python "src/" directory layout

return scalar for scalar input

27 Jan 03:23
e852625
Compare
Choose a tag to compare

v2.0 introduced the use of numpy.vectorize to allow seamless pymap3d use with ndarray but also without numpy and scalars. However, this returned 0-d ndarray for certain functions rather than scalars for scalar inputs. This fixes that issue and adds tests for it.