Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhancement of the CommonViewPeriod #30

Merged
merged 2 commits into from
Dec 31, 2024
Merged

Conversation

vicalloy
Copy link
Contributor

1. CommonViewPeriod::first_track_offset_nanos() returns zero if it is not a bipm_common_view_period.

The 4-minute offset is only applicable to BIPM; for custom periods, 0 might be more reasonable.

# CGGTTS-Version 2E  2.1
These tracking epochs are offset by 4 minutes each day; this offset was originally
fixed in order to stay aligned with the sidereal period of the GPS constellation and to follow each
day the same common-view comparison schedule. Even if the daily repeatability is not needed
any more and is not valid for the constellations other than GPS, it has been decided to keep the
same tracking schedule in order to assure the full compatibility with the previous version of the
CGGTTS.

2. CommonViewPeriod::next_period_start() adds a return value to indicate whether the next CommonViewPeriod is t0.

After calling CommonViewPeriod::next_period_start(), we should know if it's t0. Without this information, we won't know how to preserve the measurement data during the overlap period.
If it's t0, we should start recording the measurement count in the tracker and do nothing else. On the next t (t_89), we remove the recorded count from the tracker.
NOTE: This logic only works when there is an overlap period spanning days(BIPM period). If there is no overlap period, the tracker should always be reset before starting a new tracking.

                        │                                         │       
                        ├──────────────► T0     ◄─────────────────┼       
                        │                                         │       
                                                                          
                   MJD 59026(T0)     MJD 59025(T89)                       
  │                     │                 │                       │       
 ─┼─────────────────────┼─────────────────┼───────────────────────┼───────
  │                     │                 │                       │       
23:50                00:02              00:03                  00:18      
                                                                          
  │                                       │                               
  ├──────────────►  T89     ◄─────────────┤                               
  │                                       │                               
                                                                          

@gwbres gwbres merged commit fd8c929 into gwbres:develop Dec 31, 2024
gwbres added a commit that referenced this pull request Jan 1, 2025
* improve readme
* Rename schedule to tracker feature
  * improve MJD UTC calculations (scheduling process)
* fix example
* docs and api need some improvements
* rename rcvr to 'hardware'
* API upgrade:

   * provide Read parser
   * propose flate2 option for gzip compressed files

* Library update
* New CRC and buffering capabilities
* Add more tests
* Take CRC into account in parsing from now on
* Update docs
* Introducing CommonViewCalendar
* Enhancement of the CommonViewPeriod  (#30)
* CommonViewPeriod::first_track_offset_nanos() returns zero if it is not a bipm_common_view_period
* CommonViewPeriod::next_period_start() adds a return value to indicate whether the next CommonViewPeriod is `t0`

---------

Signed-off-by: Guillaume W. Bres <guillaume.bressaix@gmail.com>
Co-authored-by: vicalloy <zbirder@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants