time-nuts@lists.febo.com

Discussion of precise time and frequency measurement

View all threads

ADEV on data with gaps

LJ
Lux, Jim
Fri, Aug 4, 2023 4:15 PM

I've got a series of clock measurements where the actual measurement
occasionally has problems (e.g. it's measured against GPS, and there are
GPS partial outages).

What's a strategy for calculating ADEV (and related parameters) where
there are data in the sequence that are excised? For example, does
Timelab or Stable32 have a way to have timestamps for the
frequency/phase measurements that recognizes gaps?

At a first glance, it seems that the calculation for each tau will have
a different number of measurements contributing.  Say I have 1000
seconds of data, once a second, and there's a gap of 100 seconds
somewhere in the middle.  For the 1 second tau, I've got 900
measurements.  for a 100 second tau, I'll have 800 measurements (because
for 200, one or the other end point is missing), etc.

Some plots attached showing some data.  In this case, I'm looking at a
post calculated "clock bias" between GPS and the clock - that is,
there's a process that estimates the clock offset (in meters). A first
difference gets rate, and clock has some relatively fixed bias (that
changes with time), and random variations on top of that.  However, the
measurement depends on the SNR of the GPS signals (lower plot on
biasdrift, it's the measurement uncertainty estimate)

At some point, of course, the ADEV measurement is limited by the GPS
measurement uncertainty - if it's 1 ns, then ADEV is never going to
measure less than 1E-9 over 1 second.

I've got a series of clock measurements where the actual measurement occasionally has problems (e.g. it's measured against GPS, and there are GPS partial outages). What's a strategy for calculating ADEV (and related parameters) where there are data in the sequence that are excised? For example, does Timelab or Stable32 have a way to have timestamps for the frequency/phase measurements that recognizes gaps? At a first glance, it seems that the calculation for each tau will have a different number of measurements contributing.  Say I have 1000 seconds of data, once a second, and there's a gap of 100 seconds somewhere in the middle.  For the 1 second tau, I've got 900 measurements.  for a 100 second tau, I'll have 800 measurements (because for 200, one or the other end point is missing), etc. Some plots attached showing some data.  In this case, I'm looking at a post calculated "clock bias" between GPS and the clock - that is, there's a process that estimates the clock offset (in meters). A first difference gets rate, and clock has some relatively fixed bias (that changes with time), and random variations on top of that.  However, the measurement depends on the SNR of the GPS signals (lower plot on biasdrift, it's the measurement uncertainty estimate) At some point, of course, the ADEV measurement is limited by the GPS measurement uncertainty - if it's 1 ns, then ADEV is never going to measure less than 1E-9 over 1 second.
LJ
Lux, Jim
Fri, Aug 4, 2023 8:46 PM

On 8/4/23 9:15 AM, Lux, Jim via time-nuts wrote:

I've got a series of clock measurements where the actual measurement
occasionally has problems (e.g. it's measured against GPS, and there
are GPS partial outages).

What's a strategy for calculating ADEV (and related parameters) where
there are data in the sequence that are excised? For example, does
Timelab or Stable32 have a way to have timestamps for the
frequency/phase measurements that recognizes gaps?

At a first glance, it seems that the calculation for each tau will
have a different number of measurements contributing.  Say I have 1000
seconds of data, once a second, and there's a gap of 100 seconds
somewhere in the middle.  For the 1 second tau, I've got 900
measurements.  for a 100 second tau, I'll have 800 measurements
(because for 200, one or the other end point is missing), etc.

Some plots attached showing some data.  In this case, I'm looking at a
post calculated "clock bias" between GPS and the clock - that is,
there's a process that estimates the clock offset (in meters). A first
difference gets rate, and clock has some relatively fixed bias (that
changes with time), and random variations on top of that.  However,
the measurement depends on the SNR of the GPS signals (lower plot on
biasdrift, it's the measurement uncertainty estimate)

At some point, of course, the ADEV measurement is limited by the GPS
measurement uncertainty - if it's 1 ns, then ADEV is never going to
measure less than 1E-9 over 1 second.

Digging into Stable32 (or more specifically
http://www.wriley.com/Gaps.htm) it appears that it's doable. Now I just
have to try generating a data file with the right format to ingest.

On 8/4/23 9:15 AM, Lux, Jim via time-nuts wrote: > I've got a series of clock measurements where the actual measurement > occasionally has problems (e.g. it's measured against GPS, and there > are GPS partial outages). > > What's a strategy for calculating ADEV (and related parameters) where > there are data in the sequence that are excised? For example, does > Timelab or Stable32 have a way to have timestamps for the > frequency/phase measurements that recognizes gaps? > > At a first glance, it seems that the calculation for each tau will > have a different number of measurements contributing.  Say I have 1000 > seconds of data, once a second, and there's a gap of 100 seconds > somewhere in the middle.  For the 1 second tau, I've got 900 > measurements.  for a 100 second tau, I'll have 800 measurements > (because for 200, one or the other end point is missing), etc. > > Some plots attached showing some data.  In this case, I'm looking at a > post calculated "clock bias" between GPS and the clock - that is, > there's a process that estimates the clock offset (in meters). A first > difference gets rate, and clock has some relatively fixed bias (that > changes with time), and random variations on top of that.  However, > the measurement depends on the SNR of the GPS signals (lower plot on > biasdrift, it's the measurement uncertainty estimate) > > At some point, of course, the ADEV measurement is limited by the GPS > measurement uncertainty - if it's 1 ns, then ADEV is never going to > measure less than 1E-9 over 1 second. Digging into Stable32 (or more specifically http://www.wriley.com/Gaps.htm) it appears that it's doable. Now I just have to try generating a data file with the right format to ingest.
MD
Magnus Danielson
Fri, Aug 4, 2023 9:10 PM

Dear Jim.

The best current strategy to calculate ADEV with datagaps was presented
by David Howe and colleagues recently in 2021 and 2022.

One of the published articles is this:

https://www.academia.edu/79180802/Time_series_Imputation_Algorithm

I don't think we where able to include it into the IEEE 1139 and 1193,
but I will be happy to be proven wrong. If not, we will for sure include
it in next revision.

Stable32 does not have that algorithm implemented, Stable32 rather treat
gaps by not calculating the squared value if any of the phase samples is
missing. Demetrios asked about this some time back on the list. I think
Timelab does the same in best case.

The imputation algorithm uses the same thinking as the TOTALDEV, and
consider the noise of each datasample, as independent when you have
second differentiation, and with independence you can move them around
as long as you do not make data re-appear twice. The approach chosen is
to reflect samples into the sequence in reverse order. In TOTALDEV you
mirror them out around the window you analyze.

The imputated time sequence can then be processed by ADEV and friends as
usual. It has been checked for robustness and have much better
robustness to loss of data than previous methods. See article.

This work created quite a buzz when it came, and for a good reason as it
is an usually strong step forward that addresses actual concerns for the
type of opertional context you describe, where continuous monitoring is
not quite possible.

I would also like to raise your awareness of the article by Prof.
François Vernotte et al "Uncertainties of drift coefficients and
extraplolation errors: Application to clock error prediction" in
Metrologia Feb 2001. This is relevant to understand how uncertainty of
phase due to various random noises behave. The gap from measuring to
when they appear again follow these rules. They align up well with
simulations I have done. I was able to contribute this article into the
IEEE 1139 and 1193 standards, and it was done to provide support for
GALILEO.

Please let me know if I can be of further assitance.

Cheers,
Magnus

On 2023-08-04 18:15, Lux, Jim via time-nuts wrote:

I've got a series of clock measurements where the actual measurement
occasionally has problems (e.g. it's measured against GPS, and there
are GPS partial outages).

What's a strategy for calculating ADEV (and related parameters) where
there are data in the sequence that are excised? For example, does
Timelab or Stable32 have a way to have timestamps for the
frequency/phase measurements that recognizes gaps?

At a first glance, it seems that the calculation for each tau will
have a different number of measurements contributing.  Say I have 1000
seconds of data, once a second, and there's a gap of 100 seconds
somewhere in the middle.  For the 1 second tau, I've got 900
measurements.  for a 100 second tau, I'll have 800 measurements
(because for 200, one or the other end point is missing), etc.

Some plots attached showing some data.  In this case, I'm looking at a
post calculated "clock bias" between GPS and the clock - that is,
there's a process that estimates the clock offset (in meters). A first
difference gets rate, and clock has some relatively fixed bias (that
changes with time), and random variations on top of that.  However,
the measurement depends on the SNR of the GPS signals (lower plot on
biasdrift, it's the measurement uncertainty estimate)

At some point, of course, the ADEV measurement is limited by the GPS
measurement uncertainty - if it's 1 ns, then ADEV is never going to
measure less than 1E-9 over 1 second.


time-nuts mailing list -- time-nuts@lists.febo.com
To unsubscribe send an email to time-nuts-leave@lists.febo.com

Dear Jim. The best current strategy to calculate ADEV with datagaps was presented by David Howe and colleagues recently in 2021 and 2022. One of the published articles is this: https://www.academia.edu/79180802/Time_series_Imputation_Algorithm I don't think we where able to include it into the IEEE 1139 and 1193, but I will be happy to be proven wrong. If not, we will for sure include it in next revision. Stable32 does not have that algorithm implemented, Stable32 rather treat gaps by not calculating the squared value if any of the phase samples is missing. Demetrios asked about this some time back on the list. I think Timelab does the same in best case. The imputation algorithm uses the same thinking as the TOTALDEV, and consider the noise of each datasample, as independent when you have second differentiation, and with independence you can move them around as long as you do not make data re-appear twice. The approach chosen is to reflect samples into the sequence in reverse order. In TOTALDEV you mirror them out around the window you analyze. The imputated time sequence can then be processed by ADEV and friends as usual. It has been checked for robustness and have much better robustness to loss of data than previous methods. See article. This work created quite a buzz when it came, and for a good reason as it is an usually strong step forward that addresses actual concerns for the type of opertional context you describe, where continuous monitoring is not quite possible. I would also like to raise your awareness of the article by Prof. François Vernotte et al "Uncertainties of drift coefficients and extraplolation errors: Application to clock error prediction" in Metrologia Feb 2001. This is relevant to understand how uncertainty of phase due to various random noises behave. The gap from measuring to when they appear again follow these rules. They align up well with simulations I have done. I was able to contribute this article into the IEEE 1139 and 1193 standards, and it was done to provide support for GALILEO. Please let me know if I can be of further assitance. Cheers, Magnus On 2023-08-04 18:15, Lux, Jim via time-nuts wrote: > I've got a series of clock measurements where the actual measurement > occasionally has problems (e.g. it's measured against GPS, and there > are GPS partial outages). > > What's a strategy for calculating ADEV (and related parameters) where > there are data in the sequence that are excised? For example, does > Timelab or Stable32 have a way to have timestamps for the > frequency/phase measurements that recognizes gaps? > > At a first glance, it seems that the calculation for each tau will > have a different number of measurements contributing.  Say I have 1000 > seconds of data, once a second, and there's a gap of 100 seconds > somewhere in the middle.  For the 1 second tau, I've got 900 > measurements.  for a 100 second tau, I'll have 800 measurements > (because for 200, one or the other end point is missing), etc. > > Some plots attached showing some data.  In this case, I'm looking at a > post calculated "clock bias" between GPS and the clock - that is, > there's a process that estimates the clock offset (in meters). A first > difference gets rate, and clock has some relatively fixed bias (that > changes with time), and random variations on top of that.  However, > the measurement depends on the SNR of the GPS signals (lower plot on > biasdrift, it's the measurement uncertainty estimate) > > At some point, of course, the ADEV measurement is limited by the GPS > measurement uncertainty - if it's 1 ns, then ADEV is never going to > measure less than 1E-9 over 1 second. > > > _______________________________________________ > time-nuts mailing list -- time-nuts@lists.febo.com > To unsubscribe send an email to time-nuts-leave@lists.febo.com
MW
Michael Wouters
Fri, Aug 4, 2023 11:09 PM

Hello Jim

"At a first glance, it seems that the calculation for each tau will have
a different number of measurements contributing.  Say I have 1000
seconds of data, once a second, and there's a gap of 100 seconds
somewhere in the middle.  For the 1 second tau, I've got 900
measurements.  for a 100 second tau, I'll have 800 ..."

That's the right idea - you just skip the differences y_k+1 - y_k
where there are missing points, so you end up with fewer points at
each averaging time
There are various papers that describe the bias in ADEV etc that this
introduces.

Stable32 deals with gaps
http://www.wriley.com/Gaps.htm

If python is your thing, allantools does too.

Otherwise there are MATLAB tools too
https://github.com/groundstate/tftools

Cheers
Michael

On Sat, Aug 5, 2023 at 6:11 AM Lux, Jim via time-nuts
time-nuts@lists.febo.com wrote:

I've got a series of clock measurements where the actual measurement
occasionally has problems (e.g. it's measured against GPS, and there are
GPS partial outages).

What's a strategy for calculating ADEV (and related parameters) where
there are data in the sequence that are excised? For example, does
Timelab or Stable32 have a way to have timestamps for the
frequency/phase measurements that recognizes gaps?

At a first glance, it seems that the calculation for each tau will have
a different number of measurements contributing.  Say I have 1000
seconds of data, once a second, and there's a gap of 100 seconds
somewhere in the middle.  For the 1 second tau, I've got 900
measurements.  for a 100 second tau, I'll have 800 measurements (because
for 200, one or the other end point is missing), etc.

Some plots attached showing some data.  In this case, I'm looking at a
post calculated "clock bias" between GPS and the clock - that is,
there's a process that estimates the clock offset (in meters). A first
difference gets rate, and clock has some relatively fixed bias (that
changes with time), and random variations on top of that.  However, the
measurement depends on the SNR of the GPS signals (lower plot on
biasdrift, it's the measurement uncertainty estimate)

At some point, of course, the ADEV measurement is limited by the GPS
measurement uncertainty - if it's 1 ns, then ADEV is never going to
measure less than 1E-9 over 1 second.


time-nuts mailing list -- time-nuts@lists.febo.com
To unsubscribe send an email to time-nuts-leave@lists.febo.com

Hello Jim "At a first glance, it seems that the calculation for each tau will have a different number of measurements contributing. Say I have 1000 seconds of data, once a second, and there's a gap of 100 seconds somewhere in the middle. For the 1 second tau, I've got 900 measurements. for a 100 second tau, I'll have 800 ..." That's the right idea - you just skip the differences y_k+1 - y_k where there are missing points, so you end up with fewer points at each averaging time There are various papers that describe the bias in ADEV etc that this introduces. Stable32 deals with gaps http://www.wriley.com/Gaps.htm If python is your thing, allantools does too. Otherwise there are MATLAB tools too https://github.com/groundstate/tftools Cheers Michael On Sat, Aug 5, 2023 at 6:11 AM Lux, Jim via time-nuts <time-nuts@lists.febo.com> wrote: > > I've got a series of clock measurements where the actual measurement > occasionally has problems (e.g. it's measured against GPS, and there are > GPS partial outages). > > What's a strategy for calculating ADEV (and related parameters) where > there are data in the sequence that are excised? For example, does > Timelab or Stable32 have a way to have timestamps for the > frequency/phase measurements that recognizes gaps? > > At a first glance, it seems that the calculation for each tau will have > a different number of measurements contributing. Say I have 1000 > seconds of data, once a second, and there's a gap of 100 seconds > somewhere in the middle. For the 1 second tau, I've got 900 > measurements. for a 100 second tau, I'll have 800 measurements (because > for 200, one or the other end point is missing), etc. > > Some plots attached showing some data. In this case, I'm looking at a > post calculated "clock bias" between GPS and the clock - that is, > there's a process that estimates the clock offset (in meters). A first > difference gets rate, and clock has some relatively fixed bias (that > changes with time), and random variations on top of that. However, the > measurement depends on the SNR of the GPS signals (lower plot on > biasdrift, it's the measurement uncertainty estimate) > > At some point, of course, the ADEV measurement is limited by the GPS > measurement uncertainty - if it's 1 ns, then ADEV is never going to > measure less than 1E-9 over 1 second. > > _______________________________________________ > time-nuts mailing list -- time-nuts@lists.febo.com > To unsubscribe send an email to time-nuts-leave@lists.febo.com