Releases: Stanford-NavLab/gnss_lib_py
v1.0.3
In line with user requests, we are now updating our GNSS library to support Python 3.12! The library is still compatible with Python 3.9, 3.10, and 3.11 across Linux, MacOS, Windows, and Google Colab (Python 3.10). But, if you wish to continue using Python 3.8, we recommend that you stay with v1.0.2.
Version Changelog:
- Added compatibility for Python 3.12 and removes compatibility for Python 3.8, addressing #164
- Updated functions in
gnss_lib_py
to enable Python 3.12 compatibility - Expanded tutorials and documentation throughout
I hope you all enjoy the new release!
v1.0.2
Excited for a new release of gnss_lib_py
integrating new functionality and patching some user-identified bugs!
Version Changelog:
- Convert elevation and azimuth to ENU unit vectors
- Compute DOP for NavDatas with elevation and azimuth data
- Patched bug where
NavData
andVisualizations
modules were not inReadTheDocs
. - Removes NaN rows that
georinex
outputs when parsing Rinex Nav data files - Fixes #155
- unifies the conftest.py testing file for all modules
- checks for NaN pseudoranges in EKF
- adds
navdata
andvisualizations
to code coverage - adds test for returning NaN values in an int array
v1.0.1
Minor bug fix:
- Fixes initialization of
num_cols
whenNavData
is initialized.
Related updates made to docs and tests
v1.0.0
We are finally releasing version 1.0.0! This release changes file and directory structure to improve the longevity of the codebase and allow for continued expansion of its capabilities.
No significant changes will need to be made in code for users using the import gnss_lib_py as glp
convention except for the instances of the concat
, sort
, loop_time
, interpolate
, and find_wildcard_indexes
functions which used to be class functions of NavData
but are now independent functions with the first argument being the navdata
object(s) on which to perform the action.
Detailed Changelog
- breaks navdata into
navdata
andoperations
- rewrites
concat
,sort
,loop_time
,interpolate
,find_wildcard_indexes
so their independent functions and not class functions - adds
concat
ability to concatenate an arbitrary number of NavData instances rather than just two - breaks out components of visualizations into independent files
- updates ReadMe, etc. with updated directory structure
- creates uniform tutorial structure with a notebook file at least for each file in
gnss_lib_py
- updates python packages
v0.2.3
This release mainly expands robustness of the automatic ephemeris downloader, extends compatibility of the rinex_obs
parser to all observation codes, and adds parsers for raw android data.
Ephemeris Downloader
Expands file download options to enable downloads for:
rinex_nav
: present - Jan 1, 2013sp3
: present - May 24, 2012clk
: present - Oct 14, 2012
Also adds secondary sources forWUM0MGXFIN
clk,wum
clk, andBRDM00DLR_R
rinex nav for outlier days when those files weren't uploaded to CDDIS
Rinex Observation Files
- allows rinex_obs to load all possible observation codes
- z-tracking observations may have empty
carrier_phase
andraw_doppler_hz
rows - fixes #139
Android Raw Files
- differentiates the Google Smartphone Decimeter Challenge into
google_decimeter.py
and GNSSLogger parsers intoandroid.py
- updates unit_test directories according to the above change
- adds parsers for data obtained from the GNSSLogger Android app including
Raw
,Fix
and all sensors - adds recommended filters for raw GNSS data from android phones
- adds new NavData classes for the 2023 version of the Google Smartphone Decimeter Challenge
Miscellaneous
- updates python package dependencies
- minor bug fixes
- minor doc updates
v0.2.2
This release focuses on improvements to visualizations and adding two fault detection and exclusion methods.
Full changelog:
- changes plot titles to be Y vs. X
- adds option for averaging multiple y values across x
- better skyplots across long time horizons where satellites coming in and out of view
- adds Greedy EDM fault detection and exclusion
- adds Residual EDM fault detection and exclusion
- adds fde testing and documentation
- allows solve_wls() to handle empty measurements being passed in
- saves navdata CSVs to the same default results directory as visualizations
- prints requested input path if the file is not found when loading any file for help in debugging
- updates python package requirements
- adds
open in colab
badge
v0.2.1
- Vectorizes SP3 and CLK parsing for faster SV state computation
- Fixes bug in tutorials where
add_sv_states_rinex
was not being called - Bug fixes in
ephemeris_downloader.py
- Updates dependencies to latest (as of release)
v0.2.0
0.1.13
- Added a parser, tests, documentation, and tutorial for Rinex 3 .o files
- Resolved an issue in
navdata.where
in which runningwhere
on a single columnnavdata
would return empty, even when the condition was fulfilled by the already existing column - small updates to documentation
0.1.12
- Automatic generation links for methods, class definitions, and functions to their GitHub files from the documentation
- Accounts for rotation of Earth in WLS navigation solutions.
- Adds tests to check that WLS estimates are closer to Android baselines when the rotation of the Earth has been accounted for.
- Updates tutorials, docs, and tests to reflect new functionality