v0.5.0
Changes in structure of core classes:
- begin adding functions and methods to use mjd instead of jd
- Standardize Observer methods. Use method() to accept datetime objects, _method_mjd() to accept mjd time objects
- Change SGP4Predictor to SGP4Propagator
- Update satellite propagator methods to correspond to Observer methods
- Update tests and benchmarks with new class names and methods
- Remove orbit predictor Location class as inherited base class
- Create new Orbit class that can be initialized from a TLE.
- Refactor the SGP4Propagator to not call a source class directly. Instead initialize from Orbit or TLE object
- Create tests to ensure that SGP4 satrec propagator is created correctly from TLE object
Changes to pass iterators:
- Change Observer pass iterator algorithms to callable methods rather than subclassing Observer()
- Use MJD instead of JD in pass iterators. Update propagation and coordinate transformations to use MJD.
- Update tests to use new observer pass iterator methods
- move visual pass detail computation to separate function
- Performance boost: orbit_predictor pass iterator is now 1.2x faster
Misc:
- Remove old core.py functions. These can now be easily replicated with the current api
- Enforce mjd2datetime to always use microseconds.
- Rename satellite modules to sgp4.py and kepler.py