BG
Bruce Griffiths
Wed, Apr 8, 2009 12:27 PM
Steve
The data file doesn't include the time interval between samples so do
you set this in some way?
If so you need to set it to 1s for the unaltered data, to 2s when you
take every 2nd sample, and 1s when you take the first 200,000 samples.
In principle you could use CANVAS (available on request from USNO -
however you may have to wait a few days while they decide whether to
grant your request.) for such analysis in Linux but you would then need
the Linux version of Matlab.
Or you could request that it be compiled for Linux - a fairly simple
task if one has the Linux version of Matlab.
In principle you should be able to port the m source files to Scilab,
but there are some subtle differences between Scilab and Matlab so this
may take a while.
Bruce
Steve Rooke wrote:
Bruce,
But how does that explain the output of Tom's adev1 program which
still seems to give a a good measurement at tau = 1s?
73,
Steve
2009/4/8 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
If you delete every second measurement then your effective minimum
sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
You can still calculate ADEV for tau = 100,000 sec.
If you delete all but the first 200,000 lines then you can calculated
ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
You shouldn't lose sight of the fact that ADEV and OADEV are both
estimates of the Allan deviation.
Bruce
Steve Rooke wrote:
Tom,
I understand fully the points that you have made but I have obviously
not made my point clear to all and i apologise for my poor
communication skills.
This is what I'm getting at:
Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
and processing various forms of gps.dat from
http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 400000
** Normal and Overlapping Allan deviation:
1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
So far, so good. Now I delete every even line in the file which leaves
me with 200000 lines of data (400000 lines in original gps.dat file).
(awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
** Sampling period: 1 s
INCORRECT!!
sampling period is now 2s.
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
Obviously we don't have enough data now for a measurement of 100000
tau but the results for the other tau are quite close, especially when
there are sufficient data points. Now this is discontinuous data,
exactly what I was trying to allude to.
OK, so now I take only the top 200000 lines of the gps.dat file (head
-200000 gps.dat >gps2.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
Is there any Linux tools for calculating adev as I'm having to run
Windows in a VMware session?
73,
Steve
2009/4/8 Tom Van Baak tvb@leapsecond.com:
Steve,
You've asked a couple of questions. Let me start with this.
It is true that if one were only interested in the performance
of a pendulum (or quartz or atomic) clock for averaging times
of one day that all you would need is a series of time error
(aka phase) measurements made about the same time once
a day (doesn't have to be that exact). After one week, you'd
have 7 error measurements (=6 frequency =5 stability points)
and this is adequate to calculate the ADEV for tau 1 day.
This alone allows you to rank your clock among all the other
pendulum clocks out there. Note also you get time error and
rate error from these few data points too.
As another example, suppose you have a nice HP 10811A
oscillator and want to measure its drift rate. In this case you
could spend just 100 seconds and measure its frequency
once a day, or even once every couple of days. Do this for
a month and you'd have several dozen points. If you plot
these frequency measurements you will likely see that they
approximately fall on a line; the slope of the is the frequency
drift rate of the 10811. The general shape of the points, or
the fit of the line is a rough indication of how consistent the
drift rate is or if it's increasing or decreasing.
Neither of these examples require a lot of data. Both of these
are real-world examples.
OK so far?
/tvb
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
Steve
The data file doesn't include the time interval between samples so do
you set this in some way?
If so you need to set it to 1s for the unaltered data, to 2s when you
take every 2nd sample, and 1s when you take the first 200,000 samples.
In principle you could use CANVAS (available on request from USNO -
however you may have to wait a few days while they decide whether to
grant your request.) for such analysis in Linux but you would then need
the Linux version of Matlab.
Or you could request that it be compiled for Linux - a fairly simple
task if one has the Linux version of Matlab.
In principle you should be able to port the m source files to Scilab,
but there are some subtle differences between Scilab and Matlab so this
may take a while.
Bruce
Steve Rooke wrote:
> Bruce,
>
> But how does that explain the output of Tom's adev1 program which
> still seems to give a a good measurement at tau = 1s?
>
> 73,
> Steve
>
> 2009/4/8 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>
>> Steve
>>
>> If you delete every second measurement then your effective minimum
>> sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
>> You can still calculate ADEV for tau = 100,000 sec.
>>
>> If you delete all but the first 200,000 lines then you can calculated
>> ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
>>
>> You shouldn't lose sight of the fact that ADEV and OADEV are both
>> estimates of the Allan deviation.
>>
>>
>> Bruce
>>
>> Steve Rooke wrote:
>>
>>> Tom,
>>>
>>> I understand fully the points that you have made but I have obviously
>>> not made my point clear to all and i apologise for my poor
>>> communication skills.
>>>
>>> This is what I'm getting at:
>>>
>>> Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
>>> and processing various forms of gps.dat from
>>> http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
>>>
>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
>>>
>>> ** Sampling period: 1 s
>>> ** Phase data scale factor: 1.000e+000
>>> ** Total phase samples: 400000
>>> ** Normal and Overlapping Allan deviation:
>>>
>>> 1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
>>> 2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
>>> 5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
>>> 10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
>>> 20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
>>> 50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
>>> 100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
>>> 200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
>>> 500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
>>> 1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
>>> 2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
>>> 5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
>>> 10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
>>> 20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
>>> 50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
>>> 100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
>>>
>>> So far, so good. Now I delete every even line in the file which leaves
>>> me with 200000 lines of data (400000 lines in original gps.dat file).
>>> (awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
>>>
>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
>>>
>>> ** Sampling period: 1 s
>>>
INCORRECT!!
sampling period is now 2s.
>>> ** Phase data scale factor: 1.000e+000
>>> ** Total phase samples: 200000
>>> ** Normal and Overlapping Allan deviation:
>>>
>>> 1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
>>> 2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
>>> 5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
>>> 10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
>>> 20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
>>> 50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
>>> 100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
>>> 200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
>>> 500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
>>> 1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
>>> 2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
>>> 5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
>>> 10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
>>> 20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
>>> 50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
>>>
>>> Obviously we don't have enough data now for a measurement of 100000
>>> tau but the results for the other tau are quite close, especially when
>>> there are sufficient data points. Now this is discontinuous data,
>>> exactly what I was trying to allude to.
>>>
>>> OK, so now I take only the top 200000 lines of the gps.dat file (head
>>> -200000 gps.dat >gps2.dat)
>>>
>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
>>>
>>> ** Sampling period: 1 s
>>> ** Phase data scale factor: 1.000e+000
>>> ** Total phase samples: 200000
>>> ** Normal and Overlapping Allan deviation:
>>>
>>> 1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
>>> 2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
>>> 5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
>>> 10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
>>> 20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
>>> 50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
>>> 100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
>>> 200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
>>> 500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
>>> 1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
>>> 2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
>>> 5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
>>> 10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
>>> 20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
>>> 50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
>>>
>>> Is there any Linux tools for calculating adev as I'm having to run
>>> Windows in a VMware session?
>>>
>>> 73,
>>> Steve
>>>
>>> 2009/4/8 Tom Van Baak <tvb@leapsecond.com>:
>>>
>>>
>>>> Steve,
>>>>
>>>> You've asked a couple of questions. Let me start with this.
>>>>
>>>> It is true that if one were only interested in the performance
>>>> of a pendulum (or quartz or atomic) clock for averaging times
>>>> of one day that all you would need is a series of time error
>>>> (aka phase) measurements made about the same time once
>>>> a day (doesn't have to be that exact). After one week, you'd
>>>> have 7 error measurements (=6 frequency =5 stability points)
>>>> and this is adequate to calculate the ADEV for tau 1 day.
>>>> This alone allows you to rank your clock among all the other
>>>> pendulum clocks out there. Note also you get time error and
>>>> rate error from these few data points too.
>>>>
>>>> As another example, suppose you have a nice HP 10811A
>>>> oscillator and want to measure its drift rate. In this case you
>>>> could spend just 100 seconds and measure its frequency
>>>> once a day, or even once every couple of days. Do this for
>>>> a month and you'd have several dozen points. If you plot
>>>> these frequency measurements you will likely see that they
>>>> approximately fall on a line; the slope of the is the frequency
>>>> drift rate of the 10811. The general shape of the points, or
>>>> the fit of the line is a rough indication of how consistent the
>>>> drift rate is or if it's increasing or decreasing.
>>>>
>>>> Neither of these examples require a lot of data. Both of these
>>>> are real-world examples.
>>>>
>>>> OK so far?
>>>>
>>>> /tvb
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> time-nuts mailing list -- time-nuts@febo.com
>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>> and follow the instructions there.
>>>>
>>>>
>>>>
>>>
>>>
>>>
>> _______________________________________________
>> time-nuts mailing list -- time-nuts@febo.com
>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>> and follow the instructions there.
>>
>>
>
>
>
>
SR
Steve Rooke
Wed, Apr 8, 2009 12:37 PM
Bruce,
I set nothing, as indicated in my text, I just delete data points, IE.
a file of 400000 records now becomes 200000. I'm trying to get my head
round this as the absolute requirement for continuous data seems
unneeded. What you have to remember here is that the data set I'm
working with consists of discrete measurements of the period of each
pulse. If it was timestamps, then there would be problems.
I don't know how much MATLAB costs but I would guess it is way out of my budget.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
The data file doesn't include the time interval between samples so do
you set this in some way?
If so you need to set it to 1s for the unaltered data, to 2s when you
take every 2nd sample, and 1s when you take the first 200,000 samples.
In principle you could use CANVAS (available on request from USNO -
however you may have to wait a few days while they decide whether to
grant your request.) for such analysis in Linux but you would then need
the Linux version of Matlab.
Or you could request that it be compiled for Linux - a fairly simple
task if one has the Linux version of Matlab.
In principle you should be able to port the m source files to Scilab,
but there are some subtle differences between Scilab and Matlab so this
may take a while.
Bruce
Steve Rooke wrote:
Bruce,
But how does that explain the output of Tom's adev1 program which
still seems to give a a good measurement at tau = 1s?
73,
Steve
2009/4/8 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
If you delete every second measurement then your effective minimum
sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
You can still calculate ADEV for tau = 100,000 sec.
If you delete all but the first 200,000 lines then you can calculated
ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
You shouldn't lose sight of the fact that ADEV and OADEV are both
estimates of the Allan deviation.
Bruce
Steve Rooke wrote:
Tom,
I understand fully the points that you have made but I have obviously
not made my point clear to all and i apologise for my poor
communication skills.
This is what I'm getting at:
Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
and processing various forms of gps.dat from
http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 400000
** Normal and Overlapping Allan deviation:
1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
So far, so good. Now I delete every even line in the file which leaves
me with 200000 lines of data (400000 lines in original gps.dat file).
(awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
** Sampling period: 1 s
INCORRECT!!
sampling period is now 2s.
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
Obviously we don't have enough data now for a measurement of 100000
tau but the results for the other tau are quite close, especially when
there are sufficient data points. Now this is discontinuous data,
exactly what I was trying to allude to.
OK, so now I take only the top 200000 lines of the gps.dat file (head
-200000 gps.dat >gps2.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
Is there any Linux tools for calculating adev as I'm having to run
Windows in a VMware session?
73,
Steve
2009/4/8 Tom Van Baak tvb@leapsecond.com:
Steve,
You've asked a couple of questions. Let me start with this.
It is true that if one were only interested in the performance
of a pendulum (or quartz or atomic) clock for averaging times
of one day that all you would need is a series of time error
(aka phase) measurements made about the same time once
a day (doesn't have to be that exact). After one week, you'd
have 7 error measurements (=6 frequency =5 stability points)
and this is adequate to calculate the ADEV for tau 1 day.
This alone allows you to rank your clock among all the other
pendulum clocks out there. Note also you get time error and
rate error from these few data points too.
As another example, suppose you have a nice HP 10811A
oscillator and want to measure its drift rate. In this case you
could spend just 100 seconds and measure its frequency
once a day, or even once every couple of days. Do this for
a month and you'd have several dozen points. If you plot
these frequency measurements you will likely see that they
approximately fall on a line; the slope of the is the frequency
drift rate of the 10811. The general shape of the points, or
the fit of the line is a rough indication of how consistent the
drift rate is or if it's increasing or decreasing.
Neither of these examples require a lot of data. Both of these
are real-world examples.
OK so far?
/tvb
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
--
Steve Rooke - ZL3TUV & G8KVD & JAKDTTNW
Omnium finis imminet
Bruce,
I set nothing, as indicated in my text, I just delete data points, IE.
a file of 400000 records now becomes 200000. I'm trying to get my head
round this as the absolute requirement for continuous data seems
unneeded. What you have to remember here is that the data set I'm
working with consists of discrete measurements of the period of each
pulse. If it was timestamps, then there would be problems.
I don't know how much MATLAB costs but I would guess it is way out of my budget.
73,
Steve
2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
> Steve
>
> The data file doesn't include the time interval between samples so do
> you set this in some way?
> If so you need to set it to 1s for the unaltered data, to 2s when you
> take every 2nd sample, and 1s when you take the first 200,000 samples.
>
> In principle you could use CANVAS (available on request from USNO -
> however you may have to wait a few days while they decide whether to
> grant your request.) for such analysis in Linux but you would then need
> the Linux version of Matlab.
> Or you could request that it be compiled for Linux - a fairly simple
> task if one has the Linux version of Matlab.
>
> In principle you should be able to port the m source files to Scilab,
> but there are some subtle differences between Scilab and Matlab so this
> may take a while.
>
> Bruce
>
> Steve Rooke wrote:
>> Bruce,
>>
>> But how does that explain the output of Tom's adev1 program which
>> still seems to give a a good measurement at tau = 1s?
>>
>> 73,
>> Steve
>>
>> 2009/4/8 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>
>>> Steve
>>>
>>> If you delete every second measurement then your effective minimum
>>> sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
>>> You can still calculate ADEV for tau = 100,000 sec.
>>>
>>> If you delete all but the first 200,000 lines then you can calculated
>>> ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
>>>
>>> You shouldn't lose sight of the fact that ADEV and OADEV are both
>>> estimates of the Allan deviation.
>>>
>>>
>>> Bruce
>>>
>>> Steve Rooke wrote:
>>>
>>>> Tom,
>>>>
>>>> I understand fully the points that you have made but I have obviously
>>>> not made my point clear to all and i apologise for my poor
>>>> communication skills.
>>>>
>>>> This is what I'm getting at:
>>>>
>>>> Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
>>>> and processing various forms of gps.dat from
>>>> http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
>>>>
>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
>>>>
>>>> ** Sampling period: 1 s
>>>> ** Phase data scale factor: 1.000e+000
>>>> ** Total phase samples: 400000
>>>> ** Normal and Overlapping Allan deviation:
>>>>
>>>> 1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
>>>> 2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
>>>> 5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
>>>> 10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
>>>> 20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
>>>> 50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
>>>> 100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
>>>> 200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
>>>> 500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
>>>> 1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
>>>> 2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
>>>> 5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
>>>> 10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
>>>> 20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
>>>> 50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
>>>> 100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
>>>>
>>>> So far, so good. Now I delete every even line in the file which leaves
>>>> me with 200000 lines of data (400000 lines in original gps.dat file).
>>>> (awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
>>>>
>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
>>>>
>>>> ** Sampling period: 1 s
>>>>
> INCORRECT!!
> sampling period is now 2s.
>>>> ** Phase data scale factor: 1.000e+000
>>>> ** Total phase samples: 200000
>>>> ** Normal and Overlapping Allan deviation:
>>>>
>>>> 1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
>>>> 2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
>>>> 5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
>>>> 10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
>>>> 20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
>>>> 50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
>>>> 100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
>>>> 200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
>>>> 500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
>>>> 1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
>>>> 2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
>>>> 5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
>>>> 10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
>>>> 20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
>>>> 50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
>>>>
>>>> Obviously we don't have enough data now for a measurement of 100000
>>>> tau but the results for the other tau are quite close, especially when
>>>> there are sufficient data points. Now this is discontinuous data,
>>>> exactly what I was trying to allude to.
>>>>
>>>> OK, so now I take only the top 200000 lines of the gps.dat file (head
>>>> -200000 gps.dat >gps2.dat)
>>>>
>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
>>>>
>>>> ** Sampling period: 1 s
>>>> ** Phase data scale factor: 1.000e+000
>>>> ** Total phase samples: 200000
>>>> ** Normal and Overlapping Allan deviation:
>>>>
>>>> 1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
>>>> 2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
>>>> 5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
>>>> 10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
>>>> 20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
>>>> 50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
>>>> 100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
>>>> 200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
>>>> 500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
>>>> 1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
>>>> 2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
>>>> 5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
>>>> 10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
>>>> 20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
>>>> 50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
>>>>
>>>> Is there any Linux tools for calculating adev as I'm having to run
>>>> Windows in a VMware session?
>>>>
>>>> 73,
>>>> Steve
>>>>
>>>> 2009/4/8 Tom Van Baak <tvb@leapsecond.com>:
>>>>
>>>>
>>>>> Steve,
>>>>>
>>>>> You've asked a couple of questions. Let me start with this.
>>>>>
>>>>> It is true that if one were only interested in the performance
>>>>> of a pendulum (or quartz or atomic) clock for averaging times
>>>>> of one day that all you would need is a series of time error
>>>>> (aka phase) measurements made about the same time once
>>>>> a day (doesn't have to be that exact). After one week, you'd
>>>>> have 7 error measurements (=6 frequency =5 stability points)
>>>>> and this is adequate to calculate the ADEV for tau 1 day.
>>>>> This alone allows you to rank your clock among all the other
>>>>> pendulum clocks out there. Note also you get time error and
>>>>> rate error from these few data points too.
>>>>>
>>>>> As another example, suppose you have a nice HP 10811A
>>>>> oscillator and want to measure its drift rate. In this case you
>>>>> could spend just 100 seconds and measure its frequency
>>>>> once a day, or even once every couple of days. Do this for
>>>>> a month and you'd have several dozen points. If you plot
>>>>> these frequency measurements you will likely see that they
>>>>> approximately fall on a line; the slope of the is the frequency
>>>>> drift rate of the 10811. The general shape of the points, or
>>>>> the fit of the line is a rough indication of how consistent the
>>>>> drift rate is or if it's increasing or decreasing.
>>>>>
>>>>> Neither of these examples require a lot of data. Both of these
>>>>> are real-world examples.
>>>>>
>>>>> OK so far?
>>>>>
>>>>> /tvb
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>> and follow the instructions there.
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>> _______________________________________________
>>> time-nuts mailing list -- time-nuts@febo.com
>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>> and follow the instructions there.
>>>
>>>
>>
>>
>>
>>
>
>
> _______________________________________________
> time-nuts mailing list -- time-nuts@febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.
>
--
Steve Rooke - ZL3TUV & G8KVD & JAKDTTNW
Omnium finis imminet
BG
Bruce Griffiths
Wed, Apr 8, 2009 12:55 PM
Steve
Therein lies your problem.
adev1 defaults to a sampling interval of 1 sec. (read the C source code).
TvB's documentation explicitly states that you should supply the
sampling interval. (its a command line argument for adev1.c).
adev1.c is a simple command line program that uses stdin and stdout so
porting it to a linux command line (non graphical) program should be
straightforward.
You can even use redirection and pipes should you need them.
You can try porting it to Scilab which is free courtesy of the French
Government.
Bruce
Steve Rooke wrote:
Bruce,
I set nothing, as indicated in my text, I just delete data points, IE.
a file of 400000 records now becomes 200000. I'm trying to get my head
round this as the absolute requirement for continuous data seems
unneeded. What you have to remember here is that the data set I'm
working with consists of discrete measurements of the period of each
pulse. If it was timestamps, then there would be problems.
I don't know how much MATLAB costs but I would guess it is way out of my budget.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
The data file doesn't include the time interval between samples so do
you set this in some way?
If so you need to set it to 1s for the unaltered data, to 2s when you
take every 2nd sample, and 1s when you take the first 200,000 samples.
In principle you could use CANVAS (available on request from USNO -
however you may have to wait a few days while they decide whether to
grant your request.) for such analysis in Linux but you would then need
the Linux version of Matlab.
Or you could request that it be compiled for Linux - a fairly simple
task if one has the Linux version of Matlab.
In principle you should be able to port the m source files to Scilab,
but there are some subtle differences between Scilab and Matlab so this
may take a while.
Bruce
Steve Rooke wrote:
Bruce,
But how does that explain the output of Tom's adev1 program which
still seems to give a a good measurement at tau = 1s?
73,
Steve
2009/4/8 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
If you delete every second measurement then your effective minimum
sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
You can still calculate ADEV for tau = 100,000 sec.
If you delete all but the first 200,000 lines then you can calculated
ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
You shouldn't lose sight of the fact that ADEV and OADEV are both
estimates of the Allan deviation.
Bruce
Steve Rooke wrote:
Tom,
I understand fully the points that you have made but I have obviously
not made my point clear to all and i apologise for my poor
communication skills.
This is what I'm getting at:
Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
and processing various forms of gps.dat from
http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 400000
** Normal and Overlapping Allan deviation:
1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
So far, so good. Now I delete every even line in the file which leaves
me with 200000 lines of data (400000 lines in original gps.dat file).
(awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
** Sampling period: 1 s
INCORRECT!!
sampling period is now 2s.
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
Obviously we don't have enough data now for a measurement of 100000
tau but the results for the other tau are quite close, especially when
there are sufficient data points. Now this is discontinuous data,
exactly what I was trying to allude to.
OK, so now I take only the top 200000 lines of the gps.dat file (head
-200000 gps.dat >gps2.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
Is there any Linux tools for calculating adev as I'm having to run
Windows in a VMware session?
73,
Steve
2009/4/8 Tom Van Baak tvb@leapsecond.com:
Steve,
You've asked a couple of questions. Let me start with this.
It is true that if one were only interested in the performance
of a pendulum (or quartz or atomic) clock for averaging times
of one day that all you would need is a series of time error
(aka phase) measurements made about the same time once
a day (doesn't have to be that exact). After one week, you'd
have 7 error measurements (=6 frequency =5 stability points)
and this is adequate to calculate the ADEV for tau 1 day.
This alone allows you to rank your clock among all the other
pendulum clocks out there. Note also you get time error and
rate error from these few data points too.
As another example, suppose you have a nice HP 10811A
oscillator and want to measure its drift rate. In this case you
could spend just 100 seconds and measure its frequency
once a day, or even once every couple of days. Do this for
a month and you'd have several dozen points. If you plot
these frequency measurements you will likely see that they
approximately fall on a line; the slope of the is the frequency
drift rate of the 10811. The general shape of the points, or
the fit of the line is a rough indication of how consistent the
drift rate is or if it's increasing or decreasing.
Neither of these examples require a lot of data. Both of these
are real-world examples.
OK so far?
/tvb
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
Steve
Therein lies your problem.
adev1 defaults to a sampling interval of 1 sec. (read the C source code).
TvB's documentation explicitly states that you should supply the
sampling interval. (its a command line argument for adev1.c).
adev1.c is a simple command line program that uses stdin and stdout so
porting it to a linux command line (non graphical) program should be
straightforward.
You can even use redirection and pipes should you need them.
You can try porting it to Scilab which is free courtesy of the French
Government.
Bruce
Steve Rooke wrote:
> Bruce,
>
> I set nothing, as indicated in my text, I just delete data points, IE.
> a file of 400000 records now becomes 200000. I'm trying to get my head
> round this as the absolute requirement for continuous data seems
> unneeded. What you have to remember here is that the data set I'm
> working with consists of discrete measurements of the period of each
> pulse. If it was timestamps, then there would be problems.
>
> I don't know how much MATLAB costs but I would guess it is way out of my budget.
>
> 73,
> Steve
>
> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>
>> Steve
>>
>> The data file doesn't include the time interval between samples so do
>> you set this in some way?
>> If so you need to set it to 1s for the unaltered data, to 2s when you
>> take every 2nd sample, and 1s when you take the first 200,000 samples.
>>
>> In principle you could use CANVAS (available on request from USNO -
>> however you may have to wait a few days while they decide whether to
>> grant your request.) for such analysis in Linux but you would then need
>> the Linux version of Matlab.
>> Or you could request that it be compiled for Linux - a fairly simple
>> task if one has the Linux version of Matlab.
>>
>> In principle you should be able to port the m source files to Scilab,
>> but there are some subtle differences between Scilab and Matlab so this
>> may take a while.
>>
>> Bruce
>>
>> Steve Rooke wrote:
>>
>>> Bruce,
>>>
>>> But how does that explain the output of Tom's adev1 program which
>>> still seems to give a a good measurement at tau = 1s?
>>>
>>> 73,
>>> Steve
>>>
>>> 2009/4/8 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>
>>>
>>>> Steve
>>>>
>>>> If you delete every second measurement then your effective minimum
>>>> sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
>>>> You can still calculate ADEV for tau = 100,000 sec.
>>>>
>>>> If you delete all but the first 200,000 lines then you can calculated
>>>> ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
>>>>
>>>> You shouldn't lose sight of the fact that ADEV and OADEV are both
>>>> estimates of the Allan deviation.
>>>>
>>>>
>>>> Bruce
>>>>
>>>> Steve Rooke wrote:
>>>>
>>>>
>>>>> Tom,
>>>>>
>>>>> I understand fully the points that you have made but I have obviously
>>>>> not made my point clear to all and i apologise for my poor
>>>>> communication skills.
>>>>>
>>>>> This is what I'm getting at:
>>>>>
>>>>> Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
>>>>> and processing various forms of gps.dat from
>>>>> http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
>>>>>
>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
>>>>>
>>>>> ** Sampling period: 1 s
>>>>> ** Phase data scale factor: 1.000e+000
>>>>> ** Total phase samples: 400000
>>>>> ** Normal and Overlapping Allan deviation:
>>>>>
>>>>> 1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
>>>>> 2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
>>>>> 5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
>>>>> 10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
>>>>> 20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
>>>>> 50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
>>>>> 100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
>>>>> 200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
>>>>> 500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
>>>>> 1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
>>>>> 2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
>>>>> 5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
>>>>> 10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
>>>>> 20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
>>>>> 50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
>>>>> 100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
>>>>>
>>>>> So far, so good. Now I delete every even line in the file which leaves
>>>>> me with 200000 lines of data (400000 lines in original gps.dat file).
>>>>> (awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
>>>>>
>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
>>>>>
>>>>> ** Sampling period: 1 s
>>>>>
>>>>>
>> INCORRECT!!
>> sampling period is now 2s.
>>
>>>>> ** Phase data scale factor: 1.000e+000
>>>>> ** Total phase samples: 200000
>>>>> ** Normal and Overlapping Allan deviation:
>>>>>
>>>>> 1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
>>>>> 2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
>>>>> 5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
>>>>> 10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
>>>>> 20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
>>>>> 50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
>>>>> 100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
>>>>> 200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
>>>>> 500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
>>>>> 1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
>>>>> 2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
>>>>> 5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
>>>>> 10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
>>>>> 20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
>>>>> 50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
>>>>>
>>>>> Obviously we don't have enough data now for a measurement of 100000
>>>>> tau but the results for the other tau are quite close, especially when
>>>>> there are sufficient data points. Now this is discontinuous data,
>>>>> exactly what I was trying to allude to.
>>>>>
>>>>> OK, so now I take only the top 200000 lines of the gps.dat file (head
>>>>> -200000 gps.dat >gps2.dat)
>>>>>
>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
>>>>>
>>>>> ** Sampling period: 1 s
>>>>> ** Phase data scale factor: 1.000e+000
>>>>> ** Total phase samples: 200000
>>>>> ** Normal and Overlapping Allan deviation:
>>>>>
>>>>> 1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
>>>>> 2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
>>>>> 5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
>>>>> 10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
>>>>> 20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
>>>>> 50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
>>>>> 100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
>>>>> 200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
>>>>> 500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
>>>>> 1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
>>>>> 2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
>>>>> 5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
>>>>> 10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
>>>>> 20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
>>>>> 50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
>>>>>
>>>>> Is there any Linux tools for calculating adev as I'm having to run
>>>>> Windows in a VMware session?
>>>>>
>>>>> 73,
>>>>> Steve
>>>>>
>>>>> 2009/4/8 Tom Van Baak <tvb@leapsecond.com>:
>>>>>
>>>>>
>>>>>
>>>>>> Steve,
>>>>>>
>>>>>> You've asked a couple of questions. Let me start with this.
>>>>>>
>>>>>> It is true that if one were only interested in the performance
>>>>>> of a pendulum (or quartz or atomic) clock for averaging times
>>>>>> of one day that all you would need is a series of time error
>>>>>> (aka phase) measurements made about the same time once
>>>>>> a day (doesn't have to be that exact). After one week, you'd
>>>>>> have 7 error measurements (=6 frequency =5 stability points)
>>>>>> and this is adequate to calculate the ADEV for tau 1 day.
>>>>>> This alone allows you to rank your clock among all the other
>>>>>> pendulum clocks out there. Note also you get time error and
>>>>>> rate error from these few data points too.
>>>>>>
>>>>>> As another example, suppose you have a nice HP 10811A
>>>>>> oscillator and want to measure its drift rate. In this case you
>>>>>> could spend just 100 seconds and measure its frequency
>>>>>> once a day, or even once every couple of days. Do this for
>>>>>> a month and you'd have several dozen points. If you plot
>>>>>> these frequency measurements you will likely see that they
>>>>>> approximately fall on a line; the slope of the is the frequency
>>>>>> drift rate of the 10811. The general shape of the points, or
>>>>>> the fit of the line is a rough indication of how consistent the
>>>>>> drift rate is or if it's increasing or decreasing.
>>>>>>
>>>>>> Neither of these examples require a lot of data. Both of these
>>>>>> are real-world examples.
>>>>>>
>>>>>> OK so far?
>>>>>>
>>>>>> /tvb
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>> and follow the instructions there.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>> _______________________________________________
>>>> time-nuts mailing list -- time-nuts@febo.com
>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>> and follow the instructions there.
>>>>
>>>>
>>>>
>>>
>>>
>>>
>> _______________________________________________
>> time-nuts mailing list -- time-nuts@febo.com
>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>> and follow the instructions there.
>>
>>
>
>
>
>
JA
John Ackermann N8UR
Wed, Apr 8, 2009 1:01 PM
I've compiled adev1 under Linux with no changes required; don't recall
the exact gcc line I used but it was pretty much the obvious one.
Steve, one other point -- your results with every sample versus
every-other-sample aren't hugely different because ADEV doesn't usually
change dramatically over very short differences in tau (unless there's
some sort of periodicity in the noise). So, it would not be unusual to
see that the result for tau=2 seconds (what you got when you removed
every other sample) will be only slightly different than for tau=1 second.
John
Bruce Griffiths wrote:
Steve
Therein lies your problem.
adev1 defaults to a sampling interval of 1 sec. (read the C source code).
TvB's documentation explicitly states that you should supply the
sampling interval. (its a command line argument for adev1.c).
adev1.c is a simple command line program that uses stdin and stdout so
porting it to a linux command line (non graphical) program should be
straightforward.
You can even use redirection and pipes should you need them.
You can try porting it to Scilab which is free courtesy of the French
Government.
Bruce
Steve Rooke wrote:
Bruce,
I set nothing, as indicated in my text, I just delete data points, IE.
a file of 400000 records now becomes 200000. I'm trying to get my head
round this as the absolute requirement for continuous data seems
unneeded. What you have to remember here is that the data set I'm
working with consists of discrete measurements of the period of each
pulse. If it was timestamps, then there would be problems.
I don't know how much MATLAB costs but I would guess it is way out of my budget.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
The data file doesn't include the time interval between samples so do
you set this in some way?
If so you need to set it to 1s for the unaltered data, to 2s when you
take every 2nd sample, and 1s when you take the first 200,000 samples.
In principle you could use CANVAS (available on request from USNO -
however you may have to wait a few days while they decide whether to
grant your request.) for such analysis in Linux but you would then need
the Linux version of Matlab.
Or you could request that it be compiled for Linux - a fairly simple
task if one has the Linux version of Matlab.
In principle you should be able to port the m source files to Scilab,
but there are some subtle differences between Scilab and Matlab so this
may take a while.
Bruce
Steve Rooke wrote:
Bruce,
But how does that explain the output of Tom's adev1 program which
still seems to give a a good measurement at tau = 1s?
73,
Steve
2009/4/8 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
If you delete every second measurement then your effective minimum
sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
You can still calculate ADEV for tau = 100,000 sec.
If you delete all but the first 200,000 lines then you can calculated
ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
You shouldn't lose sight of the fact that ADEV and OADEV are both
estimates of the Allan deviation.
Bruce
Steve Rooke wrote:
Tom,
I understand fully the points that you have made but I have obviously
not made my point clear to all and i apologise for my poor
communication skills.
This is what I'm getting at:
Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
and processing various forms of gps.dat from
http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 400000
** Normal and Overlapping Allan deviation:
1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
So far, so good. Now I delete every even line in the file which leaves
me with 200000 lines of data (400000 lines in original gps.dat file).
(awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
** Sampling period: 1 s
INCORRECT!!
sampling period is now 2s.
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
Obviously we don't have enough data now for a measurement of 100000
tau but the results for the other tau are quite close, especially when
there are sufficient data points. Now this is discontinuous data,
exactly what I was trying to allude to.
OK, so now I take only the top 200000 lines of the gps.dat file (head
-200000 gps.dat >gps2.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
Is there any Linux tools for calculating adev as I'm having to run
Windows in a VMware session?
73,
Steve
2009/4/8 Tom Van Baak tvb@leapsecond.com:
Steve,
You've asked a couple of questions. Let me start with this.
It is true that if one were only interested in the performance
of a pendulum (or quartz or atomic) clock for averaging times
of one day that all you would need is a series of time error
(aka phase) measurements made about the same time once
a day (doesn't have to be that exact). After one week, you'd
have 7 error measurements (=6 frequency =5 stability points)
and this is adequate to calculate the ADEV for tau 1 day.
This alone allows you to rank your clock among all the other
pendulum clocks out there. Note also you get time error and
rate error from these few data points too.
As another example, suppose you have a nice HP 10811A
oscillator and want to measure its drift rate. In this case you
could spend just 100 seconds and measure its frequency
once a day, or even once every couple of days. Do this for
a month and you'd have several dozen points. If you plot
these frequency measurements you will likely see that they
approximately fall on a line; the slope of the is the frequency
drift rate of the 10811. The general shape of the points, or
the fit of the line is a rough indication of how consistent the
drift rate is or if it's increasing or decreasing.
Neither of these examples require a lot of data. Both of these
are real-world examples.
OK so far?
/tvb
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
I've compiled adev1 under Linux with no changes required; don't recall
the exact gcc line I used but it was pretty much the obvious one.
Steve, one other point -- your results with every sample versus
every-other-sample aren't hugely different because ADEV doesn't usually
change dramatically over very short differences in tau (unless there's
some sort of periodicity in the noise). So, it would not be unusual to
see that the result for tau=2 seconds (what you got when you removed
every other sample) will be only slightly different than for tau=1 second.
John
----
Bruce Griffiths wrote:
> Steve
>
> Therein lies your problem.
> adev1 defaults to a sampling interval of 1 sec. (read the C source code).
> TvB's documentation explicitly states that you should supply the
> sampling interval. (its a command line argument for adev1.c).
>
> adev1.c is a simple command line program that uses stdin and stdout so
> porting it to a linux command line (non graphical) program should be
> straightforward.
> You can even use redirection and pipes should you need them.
>
> You can try porting it to Scilab which is free courtesy of the French
> Government.
>
>
> Bruce
>
> Steve Rooke wrote:
>> Bruce,
>>
>> I set nothing, as indicated in my text, I just delete data points, IE.
>> a file of 400000 records now becomes 200000. I'm trying to get my head
>> round this as the absolute requirement for continuous data seems
>> unneeded. What you have to remember here is that the data set I'm
>> working with consists of discrete measurements of the period of each
>> pulse. If it was timestamps, then there would be problems.
>>
>> I don't know how much MATLAB costs but I would guess it is way out of my budget.
>>
>> 73,
>> Steve
>>
>> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>
>>> Steve
>>>
>>> The data file doesn't include the time interval between samples so do
>>> you set this in some way?
>>> If so you need to set it to 1s for the unaltered data, to 2s when you
>>> take every 2nd sample, and 1s when you take the first 200,000 samples.
>>>
>>> In principle you could use CANVAS (available on request from USNO -
>>> however you may have to wait a few days while they decide whether to
>>> grant your request.) for such analysis in Linux but you would then need
>>> the Linux version of Matlab.
>>> Or you could request that it be compiled for Linux - a fairly simple
>>> task if one has the Linux version of Matlab.
>>>
>>> In principle you should be able to port the m source files to Scilab,
>>> but there are some subtle differences between Scilab and Matlab so this
>>> may take a while.
>>>
>>> Bruce
>>>
>>> Steve Rooke wrote:
>>>
>>>> Bruce,
>>>>
>>>> But how does that explain the output of Tom's adev1 program which
>>>> still seems to give a a good measurement at tau = 1s?
>>>>
>>>> 73,
>>>> Steve
>>>>
>>>> 2009/4/8 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>>
>>>>
>>>>> Steve
>>>>>
>>>>> If you delete every second measurement then your effective minimum
>>>>> sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
>>>>> You can still calculate ADEV for tau = 100,000 sec.
>>>>>
>>>>> If you delete all but the first 200,000 lines then you can calculated
>>>>> ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
>>>>>
>>>>> You shouldn't lose sight of the fact that ADEV and OADEV are both
>>>>> estimates of the Allan deviation.
>>>>>
>>>>>
>>>>> Bruce
>>>>>
>>>>> Steve Rooke wrote:
>>>>>
>>>>>
>>>>>> Tom,
>>>>>>
>>>>>> I understand fully the points that you have made but I have obviously
>>>>>> not made my point clear to all and i apologise for my poor
>>>>>> communication skills.
>>>>>>
>>>>>> This is what I'm getting at:
>>>>>>
>>>>>> Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
>>>>>> and processing various forms of gps.dat from
>>>>>> http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
>>>>>>
>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
>>>>>>
>>>>>> ** Sampling period: 1 s
>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>> ** Total phase samples: 400000
>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>
>>>>>> 1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
>>>>>> 2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
>>>>>> 5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
>>>>>> 10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
>>>>>> 20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
>>>>>> 50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
>>>>>> 100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
>>>>>> 200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
>>>>>> 500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
>>>>>> 1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
>>>>>> 2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
>>>>>> 5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
>>>>>> 10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
>>>>>> 20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
>>>>>> 50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
>>>>>> 100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
>>>>>>
>>>>>> So far, so good. Now I delete every even line in the file which leaves
>>>>>> me with 200000 lines of data (400000 lines in original gps.dat file).
>>>>>> (awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
>>>>>>
>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
>>>>>>
>>>>>> ** Sampling period: 1 s
>>>>>>
>>>>>>
>>> INCORRECT!!
>>> sampling period is now 2s.
>>>
>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>> ** Total phase samples: 200000
>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>
>>>>>> 1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
>>>>>> 2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
>>>>>> 5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
>>>>>> 10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
>>>>>> 20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
>>>>>> 50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
>>>>>> 100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
>>>>>> 200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
>>>>>> 500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
>>>>>> 1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
>>>>>> 2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
>>>>>> 5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
>>>>>> 10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
>>>>>> 20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
>>>>>> 50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
>>>>>>
>>>>>> Obviously we don't have enough data now for a measurement of 100000
>>>>>> tau but the results for the other tau are quite close, especially when
>>>>>> there are sufficient data points. Now this is discontinuous data,
>>>>>> exactly what I was trying to allude to.
>>>>>>
>>>>>> OK, so now I take only the top 200000 lines of the gps.dat file (head
>>>>>> -200000 gps.dat >gps2.dat)
>>>>>>
>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
>>>>>>
>>>>>> ** Sampling period: 1 s
>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>> ** Total phase samples: 200000
>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>
>>>>>> 1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
>>>>>> 2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
>>>>>> 5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
>>>>>> 10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
>>>>>> 20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
>>>>>> 50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
>>>>>> 100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
>>>>>> 200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
>>>>>> 500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
>>>>>> 1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
>>>>>> 2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
>>>>>> 5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
>>>>>> 10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
>>>>>> 20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
>>>>>> 50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
>>>>>>
>>>>>> Is there any Linux tools for calculating adev as I'm having to run
>>>>>> Windows in a VMware session?
>>>>>>
>>>>>> 73,
>>>>>> Steve
>>>>>>
>>>>>> 2009/4/8 Tom Van Baak <tvb@leapsecond.com>:
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Steve,
>>>>>>>
>>>>>>> You've asked a couple of questions. Let me start with this.
>>>>>>>
>>>>>>> It is true that if one were only interested in the performance
>>>>>>> of a pendulum (or quartz or atomic) clock for averaging times
>>>>>>> of one day that all you would need is a series of time error
>>>>>>> (aka phase) measurements made about the same time once
>>>>>>> a day (doesn't have to be that exact). After one week, you'd
>>>>>>> have 7 error measurements (=6 frequency =5 stability points)
>>>>>>> and this is adequate to calculate the ADEV for tau 1 day.
>>>>>>> This alone allows you to rank your clock among all the other
>>>>>>> pendulum clocks out there. Note also you get time error and
>>>>>>> rate error from these few data points too.
>>>>>>>
>>>>>>> As another example, suppose you have a nice HP 10811A
>>>>>>> oscillator and want to measure its drift rate. In this case you
>>>>>>> could spend just 100 seconds and measure its frequency
>>>>>>> once a day, or even once every couple of days. Do this for
>>>>>>> a month and you'd have several dozen points. If you plot
>>>>>>> these frequency measurements you will likely see that they
>>>>>>> approximately fall on a line; the slope of the is the frequency
>>>>>>> drift rate of the 10811. The general shape of the points, or
>>>>>>> the fit of the line is a rough indication of how consistent the
>>>>>>> drift rate is or if it's increasing or decreasing.
>>>>>>>
>>>>>>> Neither of these examples require a lot of data. Both of these
>>>>>>> are real-world examples.
>>>>>>>
>>>>>>> OK so far?
>>>>>>>
>>>>>>> /tvb
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>>> and follow the instructions there.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>> _______________________________________________
>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>> and follow the instructions there.
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>> _______________________________________________
>>> time-nuts mailing list -- time-nuts@febo.com
>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>> and follow the instructions there.
>>>
>>>
>>
>>
>>
>
>
> _______________________________________________
> time-nuts mailing list -- time-nuts@febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.
SR
Steve Rooke
Wed, Apr 8, 2009 1:02 PM
Bruce,
But the sampling interval is still 1 sec and you can see by my notes
that I explicitly give this on the command line for adev1.exe.
OK, I'll have a go at compiling it as it is just a command line program.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
Therein lies your problem.
adev1 defaults to a sampling interval of 1 sec. (read the C source code).
TvB's documentation explicitly states that you should supply the
sampling interval. (its a command line argument for adev1.c).
adev1.c is a simple command line program that uses stdin and stdout so
porting it to a linux command line (non graphical) program should be
straightforward.
You can even use redirection and pipes should you need them.
You can try porting it to Scilab which is free courtesy of the French
Government.
Bruce
Steve Rooke wrote:
Bruce,
I set nothing, as indicated in my text, I just delete data points, IE.
a file of 400000 records now becomes 200000. I'm trying to get my head
round this as the absolute requirement for continuous data seems
unneeded. What you have to remember here is that the data set I'm
working with consists of discrete measurements of the period of each
pulse. If it was timestamps, then there would be problems.
I don't know how much MATLAB costs but I would guess it is way out of my budget.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
The data file doesn't include the time interval between samples so do
you set this in some way?
If so you need to set it to 1s for the unaltered data, to 2s when you
take every 2nd sample, and 1s when you take the first 200,000 samples.
In principle you could use CANVAS (available on request from USNO -
however you may have to wait a few days while they decide whether to
grant your request.) for such analysis in Linux but you would then need
the Linux version of Matlab.
Or you could request that it be compiled for Linux - a fairly simple
task if one has the Linux version of Matlab.
In principle you should be able to port the m source files to Scilab,
but there are some subtle differences between Scilab and Matlab so this
may take a while.
Bruce
Steve Rooke wrote:
Bruce,
But how does that explain the output of Tom's adev1 program which
still seems to give a a good measurement at tau = 1s?
73,
Steve
2009/4/8 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
If you delete every second measurement then your effective minimum
sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
You can still calculate ADEV for tau = 100,000 sec.
If you delete all but the first 200,000 lines then you can calculated
ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
You shouldn't lose sight of the fact that ADEV and OADEV are both
estimates of the Allan deviation.
Bruce
Steve Rooke wrote:
Tom,
I understand fully the points that you have made but I have obviously
not made my point clear to all and i apologise for my poor
communication skills.
This is what I'm getting at:
Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
and processing various forms of gps.dat from
http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 400000
** Normal and Overlapping Allan deviation:
1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
So far, so good. Now I delete every even line in the file which leaves
me with 200000 lines of data (400000 lines in original gps.dat file).
(awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
** Sampling period: 1 s
INCORRECT!!
sampling period is now 2s.
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
Obviously we don't have enough data now for a measurement of 100000
tau but the results for the other tau are quite close, especially when
there are sufficient data points. Now this is discontinuous data,
exactly what I was trying to allude to.
OK, so now I take only the top 200000 lines of the gps.dat file (head
-200000 gps.dat >gps2.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
Is there any Linux tools for calculating adev as I'm having to run
Windows in a VMware session?
73,
Steve
2009/4/8 Tom Van Baak tvb@leapsecond.com:
Steve,
You've asked a couple of questions. Let me start with this.
It is true that if one were only interested in the performance
of a pendulum (or quartz or atomic) clock for averaging times
of one day that all you would need is a series of time error
(aka phase) measurements made about the same time once
a day (doesn't have to be that exact). After one week, you'd
have 7 error measurements (=6 frequency =5 stability points)
and this is adequate to calculate the ADEV for tau 1 day.
This alone allows you to rank your clock among all the other
pendulum clocks out there. Note also you get time error and
rate error from these few data points too.
As another example, suppose you have a nice HP 10811A
oscillator and want to measure its drift rate. In this case you
could spend just 100 seconds and measure its frequency
once a day, or even once every couple of days. Do this for
a month and you'd have several dozen points. If you plot
these frequency measurements you will likely see that they
approximately fall on a line; the slope of the is the frequency
drift rate of the 10811. The general shape of the points, or
the fit of the line is a rough indication of how consistent the
drift rate is or if it's increasing or decreasing.
Neither of these examples require a lot of data. Both of these
are real-world examples.
OK so far?
/tvb
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
--
Steve Rooke - ZL3TUV & G8KVD & JAKDTTNW
Omnium finis imminet
Bruce,
But the sampling interval is still 1 sec and you can see by my notes
that I explicitly give this on the command line for adev1.exe.
OK, I'll have a go at compiling it as it is just a command line program.
73,
Steve
2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
> Steve
>
> Therein lies your problem.
> adev1 defaults to a sampling interval of 1 sec. (read the C source code).
> TvB's documentation explicitly states that you should supply the
> sampling interval. (its a command line argument for adev1.c).
>
> adev1.c is a simple command line program that uses stdin and stdout so
> porting it to a linux command line (non graphical) program should be
> straightforward.
> You can even use redirection and pipes should you need them.
>
> You can try porting it to Scilab which is free courtesy of the French
> Government.
>
>
> Bruce
>
> Steve Rooke wrote:
>> Bruce,
>>
>> I set nothing, as indicated in my text, I just delete data points, IE.
>> a file of 400000 records now becomes 200000. I'm trying to get my head
>> round this as the absolute requirement for continuous data seems
>> unneeded. What you have to remember here is that the data set I'm
>> working with consists of discrete measurements of the period of each
>> pulse. If it was timestamps, then there would be problems.
>>
>> I don't know how much MATLAB costs but I would guess it is way out of my budget.
>>
>> 73,
>> Steve
>>
>> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>
>>> Steve
>>>
>>> The data file doesn't include the time interval between samples so do
>>> you set this in some way?
>>> If so you need to set it to 1s for the unaltered data, to 2s when you
>>> take every 2nd sample, and 1s when you take the first 200,000 samples.
>>>
>>> In principle you could use CANVAS (available on request from USNO -
>>> however you may have to wait a few days while they decide whether to
>>> grant your request.) for such analysis in Linux but you would then need
>>> the Linux version of Matlab.
>>> Or you could request that it be compiled for Linux - a fairly simple
>>> task if one has the Linux version of Matlab.
>>>
>>> In principle you should be able to port the m source files to Scilab,
>>> but there are some subtle differences between Scilab and Matlab so this
>>> may take a while.
>>>
>>> Bruce
>>>
>>> Steve Rooke wrote:
>>>
>>>> Bruce,
>>>>
>>>> But how does that explain the output of Tom's adev1 program which
>>>> still seems to give a a good measurement at tau = 1s?
>>>>
>>>> 73,
>>>> Steve
>>>>
>>>> 2009/4/8 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>>
>>>>
>>>>> Steve
>>>>>
>>>>> If you delete every second measurement then your effective minimum
>>>>> sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
>>>>> You can still calculate ADEV for tau = 100,000 sec.
>>>>>
>>>>> If you delete all but the first 200,000 lines then you can calculated
>>>>> ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
>>>>>
>>>>> You shouldn't lose sight of the fact that ADEV and OADEV are both
>>>>> estimates of the Allan deviation.
>>>>>
>>>>>
>>>>> Bruce
>>>>>
>>>>> Steve Rooke wrote:
>>>>>
>>>>>
>>>>>> Tom,
>>>>>>
>>>>>> I understand fully the points that you have made but I have obviously
>>>>>> not made my point clear to all and i apologise for my poor
>>>>>> communication skills.
>>>>>>
>>>>>> This is what I'm getting at:
>>>>>>
>>>>>> Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
>>>>>> and processing various forms of gps.dat from
>>>>>> http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
>>>>>>
>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
>>>>>>
>>>>>> ** Sampling period: 1 s
>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>> ** Total phase samples: 400000
>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>
>>>>>> 1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
>>>>>> 2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
>>>>>> 5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
>>>>>> 10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
>>>>>> 20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
>>>>>> 50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
>>>>>> 100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
>>>>>> 200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
>>>>>> 500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
>>>>>> 1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
>>>>>> 2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
>>>>>> 5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
>>>>>> 10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
>>>>>> 20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
>>>>>> 50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
>>>>>> 100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
>>>>>>
>>>>>> So far, so good. Now I delete every even line in the file which leaves
>>>>>> me with 200000 lines of data (400000 lines in original gps.dat file).
>>>>>> (awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
>>>>>>
>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
>>>>>>
>>>>>> ** Sampling period: 1 s
>>>>>>
>>>>>>
>>> INCORRECT!!
>>> sampling period is now 2s.
>>>
>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>> ** Total phase samples: 200000
>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>
>>>>>> 1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
>>>>>> 2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
>>>>>> 5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
>>>>>> 10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
>>>>>> 20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
>>>>>> 50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
>>>>>> 100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
>>>>>> 200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
>>>>>> 500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
>>>>>> 1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
>>>>>> 2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
>>>>>> 5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
>>>>>> 10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
>>>>>> 20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
>>>>>> 50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
>>>>>>
>>>>>> Obviously we don't have enough data now for a measurement of 100000
>>>>>> tau but the results for the other tau are quite close, especially when
>>>>>> there are sufficient data points. Now this is discontinuous data,
>>>>>> exactly what I was trying to allude to.
>>>>>>
>>>>>> OK, so now I take only the top 200000 lines of the gps.dat file (head
>>>>>> -200000 gps.dat >gps2.dat)
>>>>>>
>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
>>>>>>
>>>>>> ** Sampling period: 1 s
>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>> ** Total phase samples: 200000
>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>
>>>>>> 1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
>>>>>> 2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
>>>>>> 5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
>>>>>> 10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
>>>>>> 20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
>>>>>> 50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
>>>>>> 100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
>>>>>> 200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
>>>>>> 500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
>>>>>> 1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
>>>>>> 2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
>>>>>> 5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
>>>>>> 10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
>>>>>> 20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
>>>>>> 50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
>>>>>>
>>>>>> Is there any Linux tools for calculating adev as I'm having to run
>>>>>> Windows in a VMware session?
>>>>>>
>>>>>> 73,
>>>>>> Steve
>>>>>>
>>>>>> 2009/4/8 Tom Van Baak <tvb@leapsecond.com>:
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Steve,
>>>>>>>
>>>>>>> You've asked a couple of questions. Let me start with this.
>>>>>>>
>>>>>>> It is true that if one were only interested in the performance
>>>>>>> of a pendulum (or quartz or atomic) clock for averaging times
>>>>>>> of one day that all you would need is a series of time error
>>>>>>> (aka phase) measurements made about the same time once
>>>>>>> a day (doesn't have to be that exact). After one week, you'd
>>>>>>> have 7 error measurements (=6 frequency =5 stability points)
>>>>>>> and this is adequate to calculate the ADEV for tau 1 day.
>>>>>>> This alone allows you to rank your clock among all the other
>>>>>>> pendulum clocks out there. Note also you get time error and
>>>>>>> rate error from these few data points too.
>>>>>>>
>>>>>>> As another example, suppose you have a nice HP 10811A
>>>>>>> oscillator and want to measure its drift rate. In this case you
>>>>>>> could spend just 100 seconds and measure its frequency
>>>>>>> once a day, or even once every couple of days. Do this for
>>>>>>> a month and you'd have several dozen points. If you plot
>>>>>>> these frequency measurements you will likely see that they
>>>>>>> approximately fall on a line; the slope of the is the frequency
>>>>>>> drift rate of the 10811. The general shape of the points, or
>>>>>>> the fit of the line is a rough indication of how consistent the
>>>>>>> drift rate is or if it's increasing or decreasing.
>>>>>>>
>>>>>>> Neither of these examples require a lot of data. Both of these
>>>>>>> are real-world examples.
>>>>>>>
>>>>>>> OK so far?
>>>>>>>
>>>>>>> /tvb
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>>> and follow the instructions there.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>> _______________________________________________
>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>> and follow the instructions there.
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>> _______________________________________________
>>> time-nuts mailing list -- time-nuts@febo.com
>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>> and follow the instructions there.
>>>
>>>
>>
>>
>>
>>
>
>
> _______________________________________________
> time-nuts mailing list -- time-nuts@febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.
>
--
Steve Rooke - ZL3TUV & G8KVD & JAKDTTNW
Omnium finis imminet
SR
Steve Rooke
Wed, Apr 8, 2009 1:09 PM
John,
OK, I see what you mean if I re-run with a 2 second period:-
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 2 <gps1.dat
** Sampling period: 2 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
2 tau, 1.5129e-009 adev(n=199998), 1.5129e-009 oadev(n=199998)
4 tau, 7.6863e-010 adev(n=99998), 7.6727e-010 oadev(n=199996)
10 tau, 3.1574e-010 adev(n=39998), 3.1529e-010 oadev(n=199990)
20 tau, 1.6570e-010 adev(n=19998), 1.6533e-010 oadev(n=199980)
40 tau, 8.9359e-011 adev(n=9998), 8.9051e-011 oadev(n=199960)
100 tau, 3.9714e-011 adev(n=3998), 4.0608e-011 oadev(n=199900)
200 tau, 2.1176e-011 adev(n=1998), 2.1633e-011 oadev(n=199800)
400 tau, 1.1001e-011 adev(n=998), 1.1296e-011 oadev(n=199600)
1000 tau, 4.8426e-012 adev(n=398), 4.7721e-012 oadev(n=199000)
2000 tau, 2.5069e-012 adev(n=198), 2.5194e-012 oadev(n=198000)
4000 tau, 1.3997e-012 adev(n=98), 1.3545e-012 oadev(n=196000)
10000 tau, 7.1400e-013 adev(n=38), 6.1070e-013 oadev(n=190000)
20000 tau, 3.7441e-013 adev(n=18), 3.2907e-013 oadev(n=180000)
40000 tau, 3.8259e-013 adev(n=8), 1.8627e-013 oadev(n=160000)
100000 tau, 1.2349e-014 adev(n=2), 6.7697e-014 oadev(n=100000)
Although it diverges a bit at the end.
73,
Steve
2009/4/9 John Ackermann N8UR jra@febo.com:
I've compiled adev1 under Linux with no changes required; don't recall
the exact gcc line I used but it was pretty much the obvious one.
Steve, one other point -- your results with every sample versus
every-other-sample aren't hugely different because ADEV doesn't usually
change dramatically over very short differences in tau (unless there's
some sort of periodicity in the noise). So, it would not be unusual to
see that the result for tau=2 seconds (what you got when you removed
every other sample) will be only slightly different than for tau=1 second.
John
Bruce Griffiths wrote:
Steve
Therein lies your problem.
adev1 defaults to a sampling interval of 1 sec. (read the C source code).
TvB's documentation explicitly states that you should supply the
sampling interval. (its a command line argument for adev1.c).
adev1.c is a simple command line program that uses stdin and stdout so
porting it to a linux command line (non graphical) program should be
straightforward.
You can even use redirection and pipes should you need them.
You can try porting it to Scilab which is free courtesy of the French
Government.
Bruce
Steve Rooke wrote:
Bruce,
I set nothing, as indicated in my text, I just delete data points, IE.
a file of 400000 records now becomes 200000. I'm trying to get my head
round this as the absolute requirement for continuous data seems
unneeded. What you have to remember here is that the data set I'm
working with consists of discrete measurements of the period of each
pulse. If it was timestamps, then there would be problems.
I don't know how much MATLAB costs but I would guess it is way out of my budget.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
The data file doesn't include the time interval between samples so do
you set this in some way?
If so you need to set it to 1s for the unaltered data, to 2s when you
take every 2nd sample, and 1s when you take the first 200,000 samples.
In principle you could use CANVAS (available on request from USNO -
however you may have to wait a few days while they decide whether to
grant your request.) for such analysis in Linux but you would then need
the Linux version of Matlab.
Or you could request that it be compiled for Linux - a fairly simple
task if one has the Linux version of Matlab.
In principle you should be able to port the m source files to Scilab,
but there are some subtle differences between Scilab and Matlab so this
may take a while.
Bruce
Steve Rooke wrote:
Bruce,
But how does that explain the output of Tom's adev1 program which
still seems to give a a good measurement at tau = 1s?
73,
Steve
2009/4/8 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
If you delete every second measurement then your effective minimum
sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
You can still calculate ADEV for tau = 100,000 sec.
If you delete all but the first 200,000 lines then you can calculated
ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
You shouldn't lose sight of the fact that ADEV and OADEV are both
estimates of the Allan deviation.
Bruce
Steve Rooke wrote:
Tom,
I understand fully the points that you have made but I have obviously
not made my point clear to all and i apologise for my poor
communication skills.
This is what I'm getting at:
Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
and processing various forms of gps.dat from
http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 400000
** Normal and Overlapping Allan deviation:
1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
So far, so good. Now I delete every even line in the file which leaves
me with 200000 lines of data (400000 lines in original gps.dat file).
(awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
** Sampling period: 1 s
INCORRECT!!
sampling period is now 2s.
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
Obviously we don't have enough data now for a measurement of 100000
tau but the results for the other tau are quite close, especially when
there are sufficient data points. Now this is discontinuous data,
exactly what I was trying to allude to.
OK, so now I take only the top 200000 lines of the gps.dat file (head
-200000 gps.dat >gps2.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
Is there any Linux tools for calculating adev as I'm having to run
Windows in a VMware session?
73,
Steve
2009/4/8 Tom Van Baak tvb@leapsecond.com:
Steve,
You've asked a couple of questions. Let me start with this.
It is true that if one were only interested in the performance
of a pendulum (or quartz or atomic) clock for averaging times
of one day that all you would need is a series of time error
(aka phase) measurements made about the same time once
a day (doesn't have to be that exact). After one week, you'd
have 7 error measurements (=6 frequency =5 stability points)
and this is adequate to calculate the ADEV for tau 1 day.
This alone allows you to rank your clock among all the other
pendulum clocks out there. Note also you get time error and
rate error from these few data points too.
As another example, suppose you have a nice HP 10811A
oscillator and want to measure its drift rate. In this case you
could spend just 100 seconds and measure its frequency
once a day, or even once every couple of days. Do this for
a month and you'd have several dozen points. If you plot
these frequency measurements you will likely see that they
approximately fall on a line; the slope of the is the frequency
drift rate of the 10811. The general shape of the points, or
the fit of the line is a rough indication of how consistent the
drift rate is or if it's increasing or decreasing.
Neither of these examples require a lot of data. Both of these
are real-world examples.
OK so far?
/tvb
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
--
Steve Rooke - ZL3TUV & G8KVD & JAKDTTNW
Omnium finis imminet
John,
OK, I see what you mean if I re-run with a 2 second period:-
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 2 <gps1.dat
** Sampling period: 2 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
2 tau, 1.5129e-009 adev(n=199998), 1.5129e-009 oadev(n=199998)
4 tau, 7.6863e-010 adev(n=99998), 7.6727e-010 oadev(n=199996)
10 tau, 3.1574e-010 adev(n=39998), 3.1529e-010 oadev(n=199990)
20 tau, 1.6570e-010 adev(n=19998), 1.6533e-010 oadev(n=199980)
40 tau, 8.9359e-011 adev(n=9998), 8.9051e-011 oadev(n=199960)
100 tau, 3.9714e-011 adev(n=3998), 4.0608e-011 oadev(n=199900)
200 tau, 2.1176e-011 adev(n=1998), 2.1633e-011 oadev(n=199800)
400 tau, 1.1001e-011 adev(n=998), 1.1296e-011 oadev(n=199600)
1000 tau, 4.8426e-012 adev(n=398), 4.7721e-012 oadev(n=199000)
2000 tau, 2.5069e-012 adev(n=198), 2.5194e-012 oadev(n=198000)
4000 tau, 1.3997e-012 adev(n=98), 1.3545e-012 oadev(n=196000)
10000 tau, 7.1400e-013 adev(n=38), 6.1070e-013 oadev(n=190000)
20000 tau, 3.7441e-013 adev(n=18), 3.2907e-013 oadev(n=180000)
40000 tau, 3.8259e-013 adev(n=8), 1.8627e-013 oadev(n=160000)
100000 tau, 1.2349e-014 adev(n=2), 6.7697e-014 oadev(n=100000)
Although it diverges a bit at the end.
73,
Steve
2009/4/9 John Ackermann N8UR <jra@febo.com>:
> I've compiled adev1 under Linux with no changes required; don't recall
> the exact gcc line I used but it was pretty much the obvious one.
>
> Steve, one other point -- your results with every sample versus
> every-other-sample aren't hugely different because ADEV doesn't usually
> change dramatically over very short differences in tau (unless there's
> some sort of periodicity in the noise). So, it would not be unusual to
> see that the result for tau=2 seconds (what you got when you removed
> every other sample) will be only slightly different than for tau=1 second.
>
> John
> ----
> Bruce Griffiths wrote:
>> Steve
>>
>> Therein lies your problem.
>> adev1 defaults to a sampling interval of 1 sec. (read the C source code).
>> TvB's documentation explicitly states that you should supply the
>> sampling interval. (its a command line argument for adev1.c).
>>
>> adev1.c is a simple command line program that uses stdin and stdout so
>> porting it to a linux command line (non graphical) program should be
>> straightforward.
>> You can even use redirection and pipes should you need them.
>>
>> You can try porting it to Scilab which is free courtesy of the French
>> Government.
>>
>>
>> Bruce
>>
>> Steve Rooke wrote:
>>> Bruce,
>>>
>>> I set nothing, as indicated in my text, I just delete data points, IE.
>>> a file of 400000 records now becomes 200000. I'm trying to get my head
>>> round this as the absolute requirement for continuous data seems
>>> unneeded. What you have to remember here is that the data set I'm
>>> working with consists of discrete measurements of the period of each
>>> pulse. If it was timestamps, then there would be problems.
>>>
>>> I don't know how much MATLAB costs but I would guess it is way out of my budget.
>>>
>>> 73,
>>> Steve
>>>
>>> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>
>>>> Steve
>>>>
>>>> The data file doesn't include the time interval between samples so do
>>>> you set this in some way?
>>>> If so you need to set it to 1s for the unaltered data, to 2s when you
>>>> take every 2nd sample, and 1s when you take the first 200,000 samples.
>>>>
>>>> In principle you could use CANVAS (available on request from USNO -
>>>> however you may have to wait a few days while they decide whether to
>>>> grant your request.) for such analysis in Linux but you would then need
>>>> the Linux version of Matlab.
>>>> Or you could request that it be compiled for Linux - a fairly simple
>>>> task if one has the Linux version of Matlab.
>>>>
>>>> In principle you should be able to port the m source files to Scilab,
>>>> but there are some subtle differences between Scilab and Matlab so this
>>>> may take a while.
>>>>
>>>> Bruce
>>>>
>>>> Steve Rooke wrote:
>>>>
>>>>> Bruce,
>>>>>
>>>>> But how does that explain the output of Tom's adev1 program which
>>>>> still seems to give a a good measurement at tau = 1s?
>>>>>
>>>>> 73,
>>>>> Steve
>>>>>
>>>>> 2009/4/8 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>>>
>>>>>
>>>>>> Steve
>>>>>>
>>>>>> If you delete every second measurement then your effective minimum
>>>>>> sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
>>>>>> You can still calculate ADEV for tau = 100,000 sec.
>>>>>>
>>>>>> If you delete all but the first 200,000 lines then you can calculated
>>>>>> ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
>>>>>>
>>>>>> You shouldn't lose sight of the fact that ADEV and OADEV are both
>>>>>> estimates of the Allan deviation.
>>>>>>
>>>>>>
>>>>>> Bruce
>>>>>>
>>>>>> Steve Rooke wrote:
>>>>>>
>>>>>>
>>>>>>> Tom,
>>>>>>>
>>>>>>> I understand fully the points that you have made but I have obviously
>>>>>>> not made my point clear to all and i apologise for my poor
>>>>>>> communication skills.
>>>>>>>
>>>>>>> This is what I'm getting at:
>>>>>>>
>>>>>>> Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
>>>>>>> and processing various forms of gps.dat from
>>>>>>> http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
>>>>>>>
>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
>>>>>>>
>>>>>>> ** Sampling period: 1 s
>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>> ** Total phase samples: 400000
>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>
>>>>>>> 1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
>>>>>>> 2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
>>>>>>> 5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
>>>>>>> 10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
>>>>>>> 20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
>>>>>>> 50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
>>>>>>> 100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
>>>>>>> 200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
>>>>>>> 500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
>>>>>>> 1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
>>>>>>> 2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
>>>>>>> 5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
>>>>>>> 10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
>>>>>>> 20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
>>>>>>> 50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
>>>>>>> 100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
>>>>>>>
>>>>>>> So far, so good. Now I delete every even line in the file which leaves
>>>>>>> me with 200000 lines of data (400000 lines in original gps.dat file).
>>>>>>> (awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
>>>>>>>
>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
>>>>>>>
>>>>>>> ** Sampling period: 1 s
>>>>>>>
>>>>>>>
>>>> INCORRECT!!
>>>> sampling period is now 2s.
>>>>
>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>> ** Total phase samples: 200000
>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>
>>>>>>> 1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
>>>>>>> 2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
>>>>>>> 5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
>>>>>>> 10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
>>>>>>> 20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
>>>>>>> 50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
>>>>>>> 100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
>>>>>>> 200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
>>>>>>> 500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
>>>>>>> 1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
>>>>>>> 2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
>>>>>>> 5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
>>>>>>> 10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
>>>>>>> 20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
>>>>>>> 50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
>>>>>>>
>>>>>>> Obviously we don't have enough data now for a measurement of 100000
>>>>>>> tau but the results for the other tau are quite close, especially when
>>>>>>> there are sufficient data points. Now this is discontinuous data,
>>>>>>> exactly what I was trying to allude to.
>>>>>>>
>>>>>>> OK, so now I take only the top 200000 lines of the gps.dat file (head
>>>>>>> -200000 gps.dat >gps2.dat)
>>>>>>>
>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
>>>>>>>
>>>>>>> ** Sampling period: 1 s
>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>> ** Total phase samples: 200000
>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>
>>>>>>> 1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
>>>>>>> 2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
>>>>>>> 5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
>>>>>>> 10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
>>>>>>> 20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
>>>>>>> 50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
>>>>>>> 100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
>>>>>>> 200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
>>>>>>> 500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
>>>>>>> 1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
>>>>>>> 2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
>>>>>>> 5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
>>>>>>> 10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
>>>>>>> 20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
>>>>>>> 50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
>>>>>>>
>>>>>>> Is there any Linux tools for calculating adev as I'm having to run
>>>>>>> Windows in a VMware session?
>>>>>>>
>>>>>>> 73,
>>>>>>> Steve
>>>>>>>
>>>>>>> 2009/4/8 Tom Van Baak <tvb@leapsecond.com>:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Steve,
>>>>>>>>
>>>>>>>> You've asked a couple of questions. Let me start with this.
>>>>>>>>
>>>>>>>> It is true that if one were only interested in the performance
>>>>>>>> of a pendulum (or quartz or atomic) clock for averaging times
>>>>>>>> of one day that all you would need is a series of time error
>>>>>>>> (aka phase) measurements made about the same time once
>>>>>>>> a day (doesn't have to be that exact). After one week, you'd
>>>>>>>> have 7 error measurements (=6 frequency =5 stability points)
>>>>>>>> and this is adequate to calculate the ADEV for tau 1 day.
>>>>>>>> This alone allows you to rank your clock among all the other
>>>>>>>> pendulum clocks out there. Note also you get time error and
>>>>>>>> rate error from these few data points too.
>>>>>>>>
>>>>>>>> As another example, suppose you have a nice HP 10811A
>>>>>>>> oscillator and want to measure its drift rate. In this case you
>>>>>>>> could spend just 100 seconds and measure its frequency
>>>>>>>> once a day, or even once every couple of days. Do this for
>>>>>>>> a month and you'd have several dozen points. If you plot
>>>>>>>> these frequency measurements you will likely see that they
>>>>>>>> approximately fall on a line; the slope of the is the frequency
>>>>>>>> drift rate of the 10811. The general shape of the points, or
>>>>>>>> the fit of the line is a rough indication of how consistent the
>>>>>>>> drift rate is or if it's increasing or decreasing.
>>>>>>>>
>>>>>>>> Neither of these examples require a lot of data. Both of these
>>>>>>>> are real-world examples.
>>>>>>>>
>>>>>>>> OK so far?
>>>>>>>>
>>>>>>>> /tvb
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>>>> and follow the instructions there.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>> _______________________________________________
>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>> and follow the instructions there.
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>> _______________________________________________
>>>> time-nuts mailing list -- time-nuts@febo.com
>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>> and follow the instructions there.
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>> _______________________________________________
>> time-nuts mailing list -- time-nuts@febo.com
>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>> and follow the instructions there.
>
>
> _______________________________________________
> time-nuts mailing list -- time-nuts@febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.
>
--
Steve Rooke - ZL3TUV & G8KVD & JAKDTTNW
Omnium finis imminet
BG
Bruce Griffiths
Wed, Apr 8, 2009 1:10 PM
Bruce,
But the sampling interval is still 1 sec and you can see by my notes
that I explicitly give this on the command line for adev1.exe.
The sampling interval is indeed 1sec in the original data.
However, if you delete every second sample the sampling interval in the
resultant data is then 2 sec.
OK, I'll have a go at compiling it as it is just a command line program.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
Therein lies your problem.
adev1 defaults to a sampling interval of 1 sec. (read the C source code).
TvB's documentation explicitly states that you should supply the
sampling interval. (its a command line argument for adev1.c).
adev1.c is a simple command line program that uses stdin and stdout so
porting it to a linux command line (non graphical) program should be
straightforward.
You can even use redirection and pipes should you need them.
You can try porting it to Scilab which is free courtesy of the French
Government.
Bruce
Steve Rooke wrote:
Bruce,
I set nothing, as indicated in my text, I just delete data points, IE.
a file of 400000 records now becomes 200000. I'm trying to get my head
round this as the absolute requirement for continuous data seems
unneeded. What you have to remember here is that the data set I'm
working with consists of discrete measurements of the period of each
pulse. If it was timestamps, then there would be problems.
I don't know how much MATLAB costs but I would guess it is way out of my budget.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
The data file doesn't include the time interval between samples so do
you set this in some way?
If so you need to set it to 1s for the unaltered data, to 2s when you
take every 2nd sample, and 1s when you take the first 200,000 samples.
In principle you could use CANVAS (available on request from USNO -
however you may have to wait a few days while they decide whether to
grant your request.) for such analysis in Linux but you would then need
the Linux version of Matlab.
Or you could request that it be compiled for Linux - a fairly simple
task if one has the Linux version of Matlab.
In principle you should be able to port the m source files to Scilab,
but there are some subtle differences between Scilab and Matlab so this
may take a while.
Bruce
Steve Rooke wrote:
Bruce,
But how does that explain the output of Tom's adev1 program which
still seems to give a a good measurement at tau = 1s?
73,
Steve
2009/4/8 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
If you delete every second measurement then your effective minimum
sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
You can still calculate ADEV for tau = 100,000 sec.
If you delete all but the first 200,000 lines then you can calculated
ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
You shouldn't lose sight of the fact that ADEV and OADEV are both
estimates of the Allan deviation.
Bruce
Steve Rooke wrote:
Tom,
I understand fully the points that you have made but I have obviously
not made my point clear to all and i apologise for my poor
communication skills.
This is what I'm getting at:
Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
and processing various forms of gps.dat from
http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 400000
** Normal and Overlapping Allan deviation:
1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
So far, so good. Now I delete every even line in the file which leaves
me with 200000 lines of data (400000 lines in original gps.dat file).
(awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
** Sampling period: 1 s
INCORRECT!!
sampling period is now 2s.
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
Obviously we don't have enough data now for a measurement of 100000
tau but the results for the other tau are quite close, especially when
there are sufficient data points. Now this is discontinuous data,
exactly what I was trying to allude to.
OK, so now I take only the top 200000 lines of the gps.dat file (head
-200000 gps.dat >gps2.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
Is there any Linux tools for calculating adev as I'm having to run
Windows in a VMware session?
73,
Steve
2009/4/8 Tom Van Baak tvb@leapsecond.com:
Steve,
You've asked a couple of questions. Let me start with this.
It is true that if one were only interested in the performance
of a pendulum (or quartz or atomic) clock for averaging times
of one day that all you would need is a series of time error
(aka phase) measurements made about the same time once
a day (doesn't have to be that exact). After one week, you'd
have 7 error measurements (=6 frequency =5 stability points)
and this is adequate to calculate the ADEV for tau 1 day.
This alone allows you to rank your clock among all the other
pendulum clocks out there. Note also you get time error and
rate error from these few data points too.
As another example, suppose you have a nice HP 10811A
oscillator and want to measure its drift rate. In this case you
could spend just 100 seconds and measure its frequency
once a day, or even once every couple of days. Do this for
a month and you'd have several dozen points. If you plot
these frequency measurements you will likely see that they
approximately fall on a line; the slope of the is the frequency
drift rate of the 10811. The general shape of the points, or
the fit of the line is a rough indication of how consistent the
drift rate is or if it's increasing or decreasing.
Neither of these examples require a lot of data. Both of these
are real-world examples.
OK so far?
/tvb
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
Steve Rooke wrote:
> Bruce,
>
> But the sampling interval is still 1 sec and you can see by my notes
> that I explicitly give this on the command line for adev1.exe.
>
>
The sampling interval is indeed 1sec in the original data.
However, if you delete every second sample the sampling interval in the
resultant data is then 2 sec.
> OK, I'll have a go at compiling it as it is just a command line program.
>
> 73,
> Steve
>
> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>
>> Steve
>>
>> Therein lies your problem.
>> adev1 defaults to a sampling interval of 1 sec. (read the C source code).
>> TvB's documentation explicitly states that you should supply the
>> sampling interval. (its a command line argument for adev1.c).
>>
>> adev1.c is a simple command line program that uses stdin and stdout so
>> porting it to a linux command line (non graphical) program should be
>> straightforward.
>> You can even use redirection and pipes should you need them.
>>
>> You can try porting it to Scilab which is free courtesy of the French
>> Government.
>>
>>
>> Bruce
>>
>> Steve Rooke wrote:
>>
>>> Bruce,
>>>
>>> I set nothing, as indicated in my text, I just delete data points, IE.
>>> a file of 400000 records now becomes 200000. I'm trying to get my head
>>> round this as the absolute requirement for continuous data seems
>>> unneeded. What you have to remember here is that the data set I'm
>>> working with consists of discrete measurements of the period of each
>>> pulse. If it was timestamps, then there would be problems.
>>>
>>> I don't know how much MATLAB costs but I would guess it is way out of my budget.
>>>
>>> 73,
>>> Steve
>>>
>>> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>
>>>
>>>> Steve
>>>>
>>>> The data file doesn't include the time interval between samples so do
>>>> you set this in some way?
>>>> If so you need to set it to 1s for the unaltered data, to 2s when you
>>>> take every 2nd sample, and 1s when you take the first 200,000 samples.
>>>>
>>>> In principle you could use CANVAS (available on request from USNO -
>>>> however you may have to wait a few days while they decide whether to
>>>> grant your request.) for such analysis in Linux but you would then need
>>>> the Linux version of Matlab.
>>>> Or you could request that it be compiled for Linux - a fairly simple
>>>> task if one has the Linux version of Matlab.
>>>>
>>>> In principle you should be able to port the m source files to Scilab,
>>>> but there are some subtle differences between Scilab and Matlab so this
>>>> may take a while.
>>>>
>>>> Bruce
>>>>
>>>> Steve Rooke wrote:
>>>>
>>>>
>>>>> Bruce,
>>>>>
>>>>> But how does that explain the output of Tom's adev1 program which
>>>>> still seems to give a a good measurement at tau = 1s?
>>>>>
>>>>> 73,
>>>>> Steve
>>>>>
>>>>> 2009/4/8 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>>>
>>>>>
>>>>>
>>>>>> Steve
>>>>>>
>>>>>> If you delete every second measurement then your effective minimum
>>>>>> sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
>>>>>> You can still calculate ADEV for tau = 100,000 sec.
>>>>>>
>>>>>> If you delete all but the first 200,000 lines then you can calculated
>>>>>> ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
>>>>>>
>>>>>> You shouldn't lose sight of the fact that ADEV and OADEV are both
>>>>>> estimates of the Allan deviation.
>>>>>>
>>>>>>
>>>>>> Bruce
>>>>>>
>>>>>> Steve Rooke wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Tom,
>>>>>>>
>>>>>>> I understand fully the points that you have made but I have obviously
>>>>>>> not made my point clear to all and i apologise for my poor
>>>>>>> communication skills.
>>>>>>>
>>>>>>> This is what I'm getting at:
>>>>>>>
>>>>>>> Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
>>>>>>> and processing various forms of gps.dat from
>>>>>>> http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
>>>>>>>
>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
>>>>>>>
>>>>>>> ** Sampling period: 1 s
>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>> ** Total phase samples: 400000
>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>
>>>>>>> 1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
>>>>>>> 2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
>>>>>>> 5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
>>>>>>> 10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
>>>>>>> 20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
>>>>>>> 50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
>>>>>>> 100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
>>>>>>> 200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
>>>>>>> 500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
>>>>>>> 1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
>>>>>>> 2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
>>>>>>> 5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
>>>>>>> 10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
>>>>>>> 20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
>>>>>>> 50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
>>>>>>> 100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
>>>>>>>
>>>>>>> So far, so good. Now I delete every even line in the file which leaves
>>>>>>> me with 200000 lines of data (400000 lines in original gps.dat file).
>>>>>>> (awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
>>>>>>>
>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
>>>>>>>
>>>>>>> ** Sampling period: 1 s
>>>>>>>
>>>>>>>
>>>>>>>
>>>> INCORRECT!!
>>>> sampling period is now 2s.
>>>>
>>>>
>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>> ** Total phase samples: 200000
>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>
>>>>>>> 1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
>>>>>>> 2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
>>>>>>> 5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
>>>>>>> 10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
>>>>>>> 20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
>>>>>>> 50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
>>>>>>> 100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
>>>>>>> 200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
>>>>>>> 500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
>>>>>>> 1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
>>>>>>> 2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
>>>>>>> 5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
>>>>>>> 10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
>>>>>>> 20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
>>>>>>> 50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
>>>>>>>
>>>>>>> Obviously we don't have enough data now for a measurement of 100000
>>>>>>> tau but the results for the other tau are quite close, especially when
>>>>>>> there are sufficient data points. Now this is discontinuous data,
>>>>>>> exactly what I was trying to allude to.
>>>>>>>
>>>>>>> OK, so now I take only the top 200000 lines of the gps.dat file (head
>>>>>>> -200000 gps.dat >gps2.dat)
>>>>>>>
>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
>>>>>>>
>>>>>>> ** Sampling period: 1 s
>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>> ** Total phase samples: 200000
>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>
>>>>>>> 1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
>>>>>>> 2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
>>>>>>> 5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
>>>>>>> 10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
>>>>>>> 20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
>>>>>>> 50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
>>>>>>> 100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
>>>>>>> 200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
>>>>>>> 500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
>>>>>>> 1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
>>>>>>> 2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
>>>>>>> 5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
>>>>>>> 10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
>>>>>>> 20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
>>>>>>> 50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
>>>>>>>
>>>>>>> Is there any Linux tools for calculating adev as I'm having to run
>>>>>>> Windows in a VMware session?
>>>>>>>
>>>>>>> 73,
>>>>>>> Steve
>>>>>>>
>>>>>>> 2009/4/8 Tom Van Baak <tvb@leapsecond.com>:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Steve,
>>>>>>>>
>>>>>>>> You've asked a couple of questions. Let me start with this.
>>>>>>>>
>>>>>>>> It is true that if one were only interested in the performance
>>>>>>>> of a pendulum (or quartz or atomic) clock for averaging times
>>>>>>>> of one day that all you would need is a series of time error
>>>>>>>> (aka phase) measurements made about the same time once
>>>>>>>> a day (doesn't have to be that exact). After one week, you'd
>>>>>>>> have 7 error measurements (=6 frequency =5 stability points)
>>>>>>>> and this is adequate to calculate the ADEV for tau 1 day.
>>>>>>>> This alone allows you to rank your clock among all the other
>>>>>>>> pendulum clocks out there. Note also you get time error and
>>>>>>>> rate error from these few data points too.
>>>>>>>>
>>>>>>>> As another example, suppose you have a nice HP 10811A
>>>>>>>> oscillator and want to measure its drift rate. In this case you
>>>>>>>> could spend just 100 seconds and measure its frequency
>>>>>>>> once a day, or even once every couple of days. Do this for
>>>>>>>> a month and you'd have several dozen points. If you plot
>>>>>>>> these frequency measurements you will likely see that they
>>>>>>>> approximately fall on a line; the slope of the is the frequency
>>>>>>>> drift rate of the 10811. The general shape of the points, or
>>>>>>>> the fit of the line is a rough indication of how consistent the
>>>>>>>> drift rate is or if it's increasing or decreasing.
>>>>>>>>
>>>>>>>> Neither of these examples require a lot of data. Both of these
>>>>>>>> are real-world examples.
>>>>>>>>
>>>>>>>> OK so far?
>>>>>>>>
>>>>>>>> /tvb
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>>>> and follow the instructions there.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>> _______________________________________________
>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>> and follow the instructions there.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>> _______________________________________________
>>>> time-nuts mailing list -- time-nuts@febo.com
>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>> and follow the instructions there.
>>>>
>>>>
>>>>
>>>
>>>
>>>
>> _______________________________________________
>> time-nuts mailing list -- time-nuts@febo.com
>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>> and follow the instructions there.
>>
>>
>
>
>
>
SR
Steve Rooke
Wed, Apr 8, 2009 1:16 PM
Yes, it compiles cleanly with "gcc -o adev1 -lm adev1.c" and works
just like a bought one, thanks.
73,
Steve
2009/4/9 John Ackermann N8UR jra@febo.com:
I've compiled adev1 under Linux with no changes required; don't recall
the exact gcc line I used but it was pretty much the obvious one.
Steve, one other point -- your results with every sample versus
every-other-sample aren't hugely different because ADEV doesn't usually
change dramatically over very short differences in tau (unless there's
some sort of periodicity in the noise). So, it would not be unusual to
see that the result for tau=2 seconds (what you got when you removed
every other sample) will be only slightly different than for tau=1 second.
John
Bruce Griffiths wrote:
Steve
Therein lies your problem.
adev1 defaults to a sampling interval of 1 sec. (read the C source code).
TvB's documentation explicitly states that you should supply the
sampling interval. (its a command line argument for adev1.c).
adev1.c is a simple command line program that uses stdin and stdout so
porting it to a linux command line (non graphical) program should be
straightforward.
You can even use redirection and pipes should you need them.
You can try porting it to Scilab which is free courtesy of the French
Government.
Bruce
Steve Rooke wrote:
Bruce,
I set nothing, as indicated in my text, I just delete data points, IE.
a file of 400000 records now becomes 200000. I'm trying to get my head
round this as the absolute requirement for continuous data seems
unneeded. What you have to remember here is that the data set I'm
working with consists of discrete measurements of the period of each
pulse. If it was timestamps, then there would be problems.
I don't know how much MATLAB costs but I would guess it is way out of my budget.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
The data file doesn't include the time interval between samples so do
you set this in some way?
If so you need to set it to 1s for the unaltered data, to 2s when you
take every 2nd sample, and 1s when you take the first 200,000 samples.
In principle you could use CANVAS (available on request from USNO -
however you may have to wait a few days while they decide whether to
grant your request.) for such analysis in Linux but you would then need
the Linux version of Matlab.
Or you could request that it be compiled for Linux - a fairly simple
task if one has the Linux version of Matlab.
In principle you should be able to port the m source files to Scilab,
but there are some subtle differences between Scilab and Matlab so this
may take a while.
Bruce
Steve Rooke wrote:
Bruce,
But how does that explain the output of Tom's adev1 program which
still seems to give a a good measurement at tau = 1s?
73,
Steve
2009/4/8 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
If you delete every second measurement then your effective minimum
sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
You can still calculate ADEV for tau = 100,000 sec.
If you delete all but the first 200,000 lines then you can calculated
ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
You shouldn't lose sight of the fact that ADEV and OADEV are both
estimates of the Allan deviation.
Bruce
Steve Rooke wrote:
Tom,
I understand fully the points that you have made but I have obviously
not made my point clear to all and i apologise for my poor
communication skills.
This is what I'm getting at:
Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
and processing various forms of gps.dat from
http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 400000
** Normal and Overlapping Allan deviation:
1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
So far, so good. Now I delete every even line in the file which leaves
me with 200000 lines of data (400000 lines in original gps.dat file).
(awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
** Sampling period: 1 s
INCORRECT!!
sampling period is now 2s.
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
Obviously we don't have enough data now for a measurement of 100000
tau but the results for the other tau are quite close, especially when
there are sufficient data points. Now this is discontinuous data,
exactly what I was trying to allude to.
OK, so now I take only the top 200000 lines of the gps.dat file (head
-200000 gps.dat >gps2.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
Is there any Linux tools for calculating adev as I'm having to run
Windows in a VMware session?
73,
Steve
2009/4/8 Tom Van Baak tvb@leapsecond.com:
Steve,
You've asked a couple of questions. Let me start with this.
It is true that if one were only interested in the performance
of a pendulum (or quartz or atomic) clock for averaging times
of one day that all you would need is a series of time error
(aka phase) measurements made about the same time once
a day (doesn't have to be that exact). After one week, you'd
have 7 error measurements (=6 frequency =5 stability points)
and this is adequate to calculate the ADEV for tau 1 day.
This alone allows you to rank your clock among all the other
pendulum clocks out there. Note also you get time error and
rate error from these few data points too.
As another example, suppose you have a nice HP 10811A
oscillator and want to measure its drift rate. In this case you
could spend just 100 seconds and measure its frequency
once a day, or even once every couple of days. Do this for
a month and you'd have several dozen points. If you plot
these frequency measurements you will likely see that they
approximately fall on a line; the slope of the is the frequency
drift rate of the 10811. The general shape of the points, or
the fit of the line is a rough indication of how consistent the
drift rate is or if it's increasing or decreasing.
Neither of these examples require a lot of data. Both of these
are real-world examples.
OK so far?
/tvb
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
--
Steve Rooke - ZL3TUV & G8KVD & JAKDTTNW
Omnium finis imminet
Yes, it compiles cleanly with "gcc -o adev1 -lm adev1.c" and works
just like a bought one, thanks.
73,
Steve
2009/4/9 John Ackermann N8UR <jra@febo.com>:
> I've compiled adev1 under Linux with no changes required; don't recall
> the exact gcc line I used but it was pretty much the obvious one.
>
> Steve, one other point -- your results with every sample versus
> every-other-sample aren't hugely different because ADEV doesn't usually
> change dramatically over very short differences in tau (unless there's
> some sort of periodicity in the noise). So, it would not be unusual to
> see that the result for tau=2 seconds (what you got when you removed
> every other sample) will be only slightly different than for tau=1 second.
>
> John
> ----
> Bruce Griffiths wrote:
>> Steve
>>
>> Therein lies your problem.
>> adev1 defaults to a sampling interval of 1 sec. (read the C source code).
>> TvB's documentation explicitly states that you should supply the
>> sampling interval. (its a command line argument for adev1.c).
>>
>> adev1.c is a simple command line program that uses stdin and stdout so
>> porting it to a linux command line (non graphical) program should be
>> straightforward.
>> You can even use redirection and pipes should you need them.
>>
>> You can try porting it to Scilab which is free courtesy of the French
>> Government.
>>
>>
>> Bruce
>>
>> Steve Rooke wrote:
>>> Bruce,
>>>
>>> I set nothing, as indicated in my text, I just delete data points, IE.
>>> a file of 400000 records now becomes 200000. I'm trying to get my head
>>> round this as the absolute requirement for continuous data seems
>>> unneeded. What you have to remember here is that the data set I'm
>>> working with consists of discrete measurements of the period of each
>>> pulse. If it was timestamps, then there would be problems.
>>>
>>> I don't know how much MATLAB costs but I would guess it is way out of my budget.
>>>
>>> 73,
>>> Steve
>>>
>>> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>
>>>> Steve
>>>>
>>>> The data file doesn't include the time interval between samples so do
>>>> you set this in some way?
>>>> If so you need to set it to 1s for the unaltered data, to 2s when you
>>>> take every 2nd sample, and 1s when you take the first 200,000 samples.
>>>>
>>>> In principle you could use CANVAS (available on request from USNO -
>>>> however you may have to wait a few days while they decide whether to
>>>> grant your request.) for such analysis in Linux but you would then need
>>>> the Linux version of Matlab.
>>>> Or you could request that it be compiled for Linux - a fairly simple
>>>> task if one has the Linux version of Matlab.
>>>>
>>>> In principle you should be able to port the m source files to Scilab,
>>>> but there are some subtle differences between Scilab and Matlab so this
>>>> may take a while.
>>>>
>>>> Bruce
>>>>
>>>> Steve Rooke wrote:
>>>>
>>>>> Bruce,
>>>>>
>>>>> But how does that explain the output of Tom's adev1 program which
>>>>> still seems to give a a good measurement at tau = 1s?
>>>>>
>>>>> 73,
>>>>> Steve
>>>>>
>>>>> 2009/4/8 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>>>
>>>>>
>>>>>> Steve
>>>>>>
>>>>>> If you delete every second measurement then your effective minimum
>>>>>> sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
>>>>>> You can still calculate ADEV for tau = 100,000 sec.
>>>>>>
>>>>>> If you delete all but the first 200,000 lines then you can calculated
>>>>>> ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
>>>>>>
>>>>>> You shouldn't lose sight of the fact that ADEV and OADEV are both
>>>>>> estimates of the Allan deviation.
>>>>>>
>>>>>>
>>>>>> Bruce
>>>>>>
>>>>>> Steve Rooke wrote:
>>>>>>
>>>>>>
>>>>>>> Tom,
>>>>>>>
>>>>>>> I understand fully the points that you have made but I have obviously
>>>>>>> not made my point clear to all and i apologise for my poor
>>>>>>> communication skills.
>>>>>>>
>>>>>>> This is what I'm getting at:
>>>>>>>
>>>>>>> Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
>>>>>>> and processing various forms of gps.dat from
>>>>>>> http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
>>>>>>>
>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
>>>>>>>
>>>>>>> ** Sampling period: 1 s
>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>> ** Total phase samples: 400000
>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>
>>>>>>> 1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
>>>>>>> 2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
>>>>>>> 5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
>>>>>>> 10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
>>>>>>> 20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
>>>>>>> 50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
>>>>>>> 100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
>>>>>>> 200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
>>>>>>> 500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
>>>>>>> 1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
>>>>>>> 2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
>>>>>>> 5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
>>>>>>> 10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
>>>>>>> 20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
>>>>>>> 50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
>>>>>>> 100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
>>>>>>>
>>>>>>> So far, so good. Now I delete every even line in the file which leaves
>>>>>>> me with 200000 lines of data (400000 lines in original gps.dat file).
>>>>>>> (awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
>>>>>>>
>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
>>>>>>>
>>>>>>> ** Sampling period: 1 s
>>>>>>>
>>>>>>>
>>>> INCORRECT!!
>>>> sampling period is now 2s.
>>>>
>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>> ** Total phase samples: 200000
>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>
>>>>>>> 1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
>>>>>>> 2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
>>>>>>> 5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
>>>>>>> 10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
>>>>>>> 20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
>>>>>>> 50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
>>>>>>> 100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
>>>>>>> 200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
>>>>>>> 500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
>>>>>>> 1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
>>>>>>> 2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
>>>>>>> 5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
>>>>>>> 10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
>>>>>>> 20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
>>>>>>> 50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
>>>>>>>
>>>>>>> Obviously we don't have enough data now for a measurement of 100000
>>>>>>> tau but the results for the other tau are quite close, especially when
>>>>>>> there are sufficient data points. Now this is discontinuous data,
>>>>>>> exactly what I was trying to allude to.
>>>>>>>
>>>>>>> OK, so now I take only the top 200000 lines of the gps.dat file (head
>>>>>>> -200000 gps.dat >gps2.dat)
>>>>>>>
>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
>>>>>>>
>>>>>>> ** Sampling period: 1 s
>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>> ** Total phase samples: 200000
>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>
>>>>>>> 1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
>>>>>>> 2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
>>>>>>> 5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
>>>>>>> 10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
>>>>>>> 20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
>>>>>>> 50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
>>>>>>> 100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
>>>>>>> 200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
>>>>>>> 500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
>>>>>>> 1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
>>>>>>> 2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
>>>>>>> 5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
>>>>>>> 10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
>>>>>>> 20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
>>>>>>> 50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
>>>>>>>
>>>>>>> Is there any Linux tools for calculating adev as I'm having to run
>>>>>>> Windows in a VMware session?
>>>>>>>
>>>>>>> 73,
>>>>>>> Steve
>>>>>>>
>>>>>>> 2009/4/8 Tom Van Baak <tvb@leapsecond.com>:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Steve,
>>>>>>>>
>>>>>>>> You've asked a couple of questions. Let me start with this.
>>>>>>>>
>>>>>>>> It is true that if one were only interested in the performance
>>>>>>>> of a pendulum (or quartz or atomic) clock for averaging times
>>>>>>>> of one day that all you would need is a series of time error
>>>>>>>> (aka phase) measurements made about the same time once
>>>>>>>> a day (doesn't have to be that exact). After one week, you'd
>>>>>>>> have 7 error measurements (=6 frequency =5 stability points)
>>>>>>>> and this is adequate to calculate the ADEV for tau 1 day.
>>>>>>>> This alone allows you to rank your clock among all the other
>>>>>>>> pendulum clocks out there. Note also you get time error and
>>>>>>>> rate error from these few data points too.
>>>>>>>>
>>>>>>>> As another example, suppose you have a nice HP 10811A
>>>>>>>> oscillator and want to measure its drift rate. In this case you
>>>>>>>> could spend just 100 seconds and measure its frequency
>>>>>>>> once a day, or even once every couple of days. Do this for
>>>>>>>> a month and you'd have several dozen points. If you plot
>>>>>>>> these frequency measurements you will likely see that they
>>>>>>>> approximately fall on a line; the slope of the is the frequency
>>>>>>>> drift rate of the 10811. The general shape of the points, or
>>>>>>>> the fit of the line is a rough indication of how consistent the
>>>>>>>> drift rate is or if it's increasing or decreasing.
>>>>>>>>
>>>>>>>> Neither of these examples require a lot of data. Both of these
>>>>>>>> are real-world examples.
>>>>>>>>
>>>>>>>> OK so far?
>>>>>>>>
>>>>>>>> /tvb
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>>>> and follow the instructions there.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>> _______________________________________________
>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>> and follow the instructions there.
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>> _______________________________________________
>>>> time-nuts mailing list -- time-nuts@febo.com
>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>> and follow the instructions there.
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>> _______________________________________________
>> time-nuts mailing list -- time-nuts@febo.com
>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>> and follow the instructions there.
>
>
> _______________________________________________
> time-nuts mailing list -- time-nuts@febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.
>
--
Steve Rooke - ZL3TUV & G8KVD & JAKDTTNW
Omnium finis imminet
SR
Steve Rooke
Wed, Apr 8, 2009 1:19 PM
The sampling interval is indeed 1sec in the original data.
However, if you delete every second sample the sampling interval in the
resultant data is then 2 sec.
Doesn't that imply that the data point should correspond to the whole
sampling period and not just half of it?
73,
Steve
OK, I'll have a go at compiling it as it is just a command line program.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
Therein lies your problem.
adev1 defaults to a sampling interval of 1 sec. (read the C source code).
TvB's documentation explicitly states that you should supply the
sampling interval. (its a command line argument for adev1.c).
adev1.c is a simple command line program that uses stdin and stdout so
porting it to a linux command line (non graphical) program should be
straightforward.
You can even use redirection and pipes should you need them.
You can try porting it to Scilab which is free courtesy of the French
Government.
Bruce
Steve Rooke wrote:
Bruce,
I set nothing, as indicated in my text, I just delete data points, IE.
a file of 400000 records now becomes 200000. I'm trying to get my head
round this as the absolute requirement for continuous data seems
unneeded. What you have to remember here is that the data set I'm
working with consists of discrete measurements of the period of each
pulse. If it was timestamps, then there would be problems.
I don't know how much MATLAB costs but I would guess it is way out of my budget.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
The data file doesn't include the time interval between samples so do
you set this in some way?
If so you need to set it to 1s for the unaltered data, to 2s when you
take every 2nd sample, and 1s when you take the first 200,000 samples.
In principle you could use CANVAS (available on request from USNO -
however you may have to wait a few days while they decide whether to
grant your request.) for such analysis in Linux but you would then need
the Linux version of Matlab.
Or you could request that it be compiled for Linux - a fairly simple
task if one has the Linux version of Matlab.
In principle you should be able to port the m source files to Scilab,
but there are some subtle differences between Scilab and Matlab so this
may take a while.
Bruce
Steve Rooke wrote:
Bruce,
But how does that explain the output of Tom's adev1 program which
still seems to give a a good measurement at tau = 1s?
73,
Steve
2009/4/8 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
If you delete every second measurement then your effective minimum
sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
You can still calculate ADEV for tau = 100,000 sec.
If you delete all but the first 200,000 lines then you can calculated
ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
You shouldn't lose sight of the fact that ADEV and OADEV are both
estimates of the Allan deviation.
Bruce
Steve Rooke wrote:
Tom,
I understand fully the points that you have made but I have obviously
not made my point clear to all and i apologise for my poor
communication skills.
This is what I'm getting at:
Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
and processing various forms of gps.dat from
http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 400000
** Normal and Overlapping Allan deviation:
1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
So far, so good. Now I delete every even line in the file which leaves
me with 200000 lines of data (400000 lines in original gps.dat file).
(awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
** Sampling period: 1 s
INCORRECT!!
sampling period is now 2s.
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
Obviously we don't have enough data now for a measurement of 100000
tau but the results for the other tau are quite close, especially when
there are sufficient data points. Now this is discontinuous data,
exactly what I was trying to allude to.
OK, so now I take only the top 200000 lines of the gps.dat file (head
-200000 gps.dat >gps2.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
Is there any Linux tools for calculating adev as I'm having to run
Windows in a VMware session?
73,
Steve
2009/4/8 Tom Van Baak tvb@leapsecond.com:
Steve,
You've asked a couple of questions. Let me start with this.
It is true that if one were only interested in the performance
of a pendulum (or quartz or atomic) clock for averaging times
of one day that all you would need is a series of time error
(aka phase) measurements made about the same time once
a day (doesn't have to be that exact). After one week, you'd
have 7 error measurements (=6 frequency =5 stability points)
and this is adequate to calculate the ADEV for tau 1 day.
This alone allows you to rank your clock among all the other
pendulum clocks out there. Note also you get time error and
rate error from these few data points too.
As another example, suppose you have a nice HP 10811A
oscillator and want to measure its drift rate. In this case you
could spend just 100 seconds and measure its frequency
once a day, or even once every couple of days. Do this for
a month and you'd have several dozen points. If you plot
these frequency measurements you will likely see that they
approximately fall on a line; the slope of the is the frequency
drift rate of the 10811. The general shape of the points, or
the fit of the line is a rough indication of how consistent the
drift rate is or if it's increasing or decreasing.
Neither of these examples require a lot of data. Both of these
are real-world examples.
OK so far?
/tvb
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
--
Steve Rooke - ZL3TUV & G8KVD & JAKDTTNW
Omnium finis imminet
2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
> The sampling interval is indeed 1sec in the original data.
> However, if you delete every second sample the sampling interval in the
> resultant data is then 2 sec.
Doesn't that imply that the data point should correspond to the whole
sampling period and not just half of it?
73,
Steve
>> OK, I'll have a go at compiling it as it is just a command line program.
>>
>> 73,
>> Steve
>>
>> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>
>>> Steve
>>>
>>> Therein lies your problem.
>>> adev1 defaults to a sampling interval of 1 sec. (read the C source code).
>>> TvB's documentation explicitly states that you should supply the
>>> sampling interval. (its a command line argument for adev1.c).
>>>
>>> adev1.c is a simple command line program that uses stdin and stdout so
>>> porting it to a linux command line (non graphical) program should be
>>> straightforward.
>>> You can even use redirection and pipes should you need them.
>>>
>>> You can try porting it to Scilab which is free courtesy of the French
>>> Government.
>>>
>>>
>>> Bruce
>>>
>>> Steve Rooke wrote:
>>>
>>>> Bruce,
>>>>
>>>> I set nothing, as indicated in my text, I just delete data points, IE.
>>>> a file of 400000 records now becomes 200000. I'm trying to get my head
>>>> round this as the absolute requirement for continuous data seems
>>>> unneeded. What you have to remember here is that the data set I'm
>>>> working with consists of discrete measurements of the period of each
>>>> pulse. If it was timestamps, then there would be problems.
>>>>
>>>> I don't know how much MATLAB costs but I would guess it is way out of my budget.
>>>>
>>>> 73,
>>>> Steve
>>>>
>>>> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>>
>>>>
>>>>> Steve
>>>>>
>>>>> The data file doesn't include the time interval between samples so do
>>>>> you set this in some way?
>>>>> If so you need to set it to 1s for the unaltered data, to 2s when you
>>>>> take every 2nd sample, and 1s when you take the first 200,000 samples.
>>>>>
>>>>> In principle you could use CANVAS (available on request from USNO -
>>>>> however you may have to wait a few days while they decide whether to
>>>>> grant your request.) for such analysis in Linux but you would then need
>>>>> the Linux version of Matlab.
>>>>> Or you could request that it be compiled for Linux - a fairly simple
>>>>> task if one has the Linux version of Matlab.
>>>>>
>>>>> In principle you should be able to port the m source files to Scilab,
>>>>> but there are some subtle differences between Scilab and Matlab so this
>>>>> may take a while.
>>>>>
>>>>> Bruce
>>>>>
>>>>> Steve Rooke wrote:
>>>>>
>>>>>
>>>>>> Bruce,
>>>>>>
>>>>>> But how does that explain the output of Tom's adev1 program which
>>>>>> still seems to give a a good measurement at tau = 1s?
>>>>>>
>>>>>> 73,
>>>>>> Steve
>>>>>>
>>>>>> 2009/4/8 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Steve
>>>>>>>
>>>>>>> If you delete every second measurement then your effective minimum
>>>>>>> sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
>>>>>>> You can still calculate ADEV for tau = 100,000 sec.
>>>>>>>
>>>>>>> If you delete all but the first 200,000 lines then you can calculated
>>>>>>> ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
>>>>>>>
>>>>>>> You shouldn't lose sight of the fact that ADEV and OADEV are both
>>>>>>> estimates of the Allan deviation.
>>>>>>>
>>>>>>>
>>>>>>> Bruce
>>>>>>>
>>>>>>> Steve Rooke wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Tom,
>>>>>>>>
>>>>>>>> I understand fully the points that you have made but I have obviously
>>>>>>>> not made my point clear to all and i apologise for my poor
>>>>>>>> communication skills.
>>>>>>>>
>>>>>>>> This is what I'm getting at:
>>>>>>>>
>>>>>>>> Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
>>>>>>>> and processing various forms of gps.dat from
>>>>>>>> http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
>>>>>>>>
>>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
>>>>>>>>
>>>>>>>> ** Sampling period: 1 s
>>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>>> ** Total phase samples: 400000
>>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>>
>>>>>>>> 1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
>>>>>>>> 2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
>>>>>>>> 5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
>>>>>>>> 10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
>>>>>>>> 20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
>>>>>>>> 50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
>>>>>>>> 100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
>>>>>>>> 200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
>>>>>>>> 500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
>>>>>>>> 1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
>>>>>>>> 2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
>>>>>>>> 5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
>>>>>>>> 10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
>>>>>>>> 20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
>>>>>>>> 50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
>>>>>>>> 100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
>>>>>>>>
>>>>>>>> So far, so good. Now I delete every even line in the file which leaves
>>>>>>>> me with 200000 lines of data (400000 lines in original gps.dat file).
>>>>>>>> (awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
>>>>>>>>
>>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
>>>>>>>>
>>>>>>>> ** Sampling period: 1 s
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>> INCORRECT!!
>>>>> sampling period is now 2s.
>>>>>
>>>>>
>>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>>> ** Total phase samples: 200000
>>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>>
>>>>>>>> 1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
>>>>>>>> 2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
>>>>>>>> 5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
>>>>>>>> 10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
>>>>>>>> 20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
>>>>>>>> 50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
>>>>>>>> 100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
>>>>>>>> 200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
>>>>>>>> 500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
>>>>>>>> 1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
>>>>>>>> 2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
>>>>>>>> 5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
>>>>>>>> 10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
>>>>>>>> 20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
>>>>>>>> 50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
>>>>>>>>
>>>>>>>> Obviously we don't have enough data now for a measurement of 100000
>>>>>>>> tau but the results for the other tau are quite close, especially when
>>>>>>>> there are sufficient data points. Now this is discontinuous data,
>>>>>>>> exactly what I was trying to allude to.
>>>>>>>>
>>>>>>>> OK, so now I take only the top 200000 lines of the gps.dat file (head
>>>>>>>> -200000 gps.dat >gps2.dat)
>>>>>>>>
>>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
>>>>>>>>
>>>>>>>> ** Sampling period: 1 s
>>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>>> ** Total phase samples: 200000
>>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>>
>>>>>>>> 1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
>>>>>>>> 2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
>>>>>>>> 5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
>>>>>>>> 10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
>>>>>>>> 20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
>>>>>>>> 50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
>>>>>>>> 100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
>>>>>>>> 200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
>>>>>>>> 500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
>>>>>>>> 1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
>>>>>>>> 2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
>>>>>>>> 5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
>>>>>>>> 10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
>>>>>>>> 20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
>>>>>>>> 50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
>>>>>>>>
>>>>>>>> Is there any Linux tools for calculating adev as I'm having to run
>>>>>>>> Windows in a VMware session?
>>>>>>>>
>>>>>>>> 73,
>>>>>>>> Steve
>>>>>>>>
>>>>>>>> 2009/4/8 Tom Van Baak <tvb@leapsecond.com>:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>> Steve,
>>>>>>>>>
>>>>>>>>> You've asked a couple of questions. Let me start with this.
>>>>>>>>>
>>>>>>>>> It is true that if one were only interested in the performance
>>>>>>>>> of a pendulum (or quartz or atomic) clock for averaging times
>>>>>>>>> of one day that all you would need is a series of time error
>>>>>>>>> (aka phase) measurements made about the same time once
>>>>>>>>> a day (doesn't have to be that exact). After one week, you'd
>>>>>>>>> have 7 error measurements (=6 frequency =5 stability points)
>>>>>>>>> and this is adequate to calculate the ADEV for tau 1 day.
>>>>>>>>> This alone allows you to rank your clock among all the other
>>>>>>>>> pendulum clocks out there. Note also you get time error and
>>>>>>>>> rate error from these few data points too.
>>>>>>>>>
>>>>>>>>> As another example, suppose you have a nice HP 10811A
>>>>>>>>> oscillator and want to measure its drift rate. In this case you
>>>>>>>>> could spend just 100 seconds and measure its frequency
>>>>>>>>> once a day, or even once every couple of days. Do this for
>>>>>>>>> a month and you'd have several dozen points. If you plot
>>>>>>>>> these frequency measurements you will likely see that they
>>>>>>>>> approximately fall on a line; the slope of the is the frequency
>>>>>>>>> drift rate of the 10811. The general shape of the points, or
>>>>>>>>> the fit of the line is a rough indication of how consistent the
>>>>>>>>> drift rate is or if it's increasing or decreasing.
>>>>>>>>>
>>>>>>>>> Neither of these examples require a lot of data. Both of these
>>>>>>>>> are real-world examples.
>>>>>>>>>
>>>>>>>>> OK so far?
>>>>>>>>>
>>>>>>>>> /tvb
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>>>>> and follow the instructions there.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>>> and follow the instructions there.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>> _______________________________________________
>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>> and follow the instructions there.
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>> _______________________________________________
>>> time-nuts mailing list -- time-nuts@febo.com
>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>> and follow the instructions there.
>>>
>>>
>>
>>
>>
>>
>
>
> _______________________________________________
> time-nuts mailing list -- time-nuts@febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.
>
--
Steve Rooke - ZL3TUV & G8KVD & JAKDTTNW
Omnium finis imminet
BG
Bruce Griffiths
Wed, Apr 8, 2009 1:28 PM
The sampling interval is indeed 1sec in the original data.
However, if you delete every second sample the sampling interval in the
resultant data is then 2 sec.
Doesn't that imply that the data point should correspond to the whole
sampling period and not just half of it?
The total measurement time is only deceased by 1 sec at the most if you
delete every second line.
The resampled data now has a sampling interval of 2 sec for the entire
measurment time.
The original data samples are phase differences measured on the second
every second.
The resampled data are phase differences measured every 2 seconds on the
corresponding second transition.
OK, I'll have a go at compiling it as it is just a command line program.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
Therein lies your problem.
adev1 defaults to a sampling interval of 1 sec. (read the C source code).
TvB's documentation explicitly states that you should supply the
sampling interval. (its a command line argument for adev1.c).
adev1.c is a simple command line program that uses stdin and stdout so
porting it to a linux command line (non graphical) program should be
straightforward.
You can even use redirection and pipes should you need them.
You can try porting it to Scilab which is free courtesy of the French
Government.
Bruce
Steve Rooke wrote:
Bruce,
I set nothing, as indicated in my text, I just delete data points, IE.
a file of 400000 records now becomes 200000. I'm trying to get my head
round this as the absolute requirement for continuous data seems
unneeded. What you have to remember here is that the data set I'm
working with consists of discrete measurements of the period of each
pulse. If it was timestamps, then there would be problems.
I don't know how much MATLAB costs but I would guess it is way out of my budget.
73,
Steve
2009/4/9 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
The data file doesn't include the time interval between samples so do
you set this in some way?
If so you need to set it to 1s for the unaltered data, to 2s when you
take every 2nd sample, and 1s when you take the first 200,000 samples.
In principle you could use CANVAS (available on request from USNO -
however you may have to wait a few days while they decide whether to
grant your request.) for such analysis in Linux but you would then need
the Linux version of Matlab.
Or you could request that it be compiled for Linux - a fairly simple
task if one has the Linux version of Matlab.
In principle you should be able to port the m source files to Scilab,
but there are some subtle differences between Scilab and Matlab so this
may take a while.
Bruce
Steve Rooke wrote:
Bruce,
But how does that explain the output of Tom's adev1 program which
still seems to give a a good measurement at tau = 1s?
73,
Steve
2009/4/8 Bruce Griffiths bruce.griffiths@xtra.co.nz:
Steve
If you delete every second measurement then your effective minimum
sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
You can still calculate ADEV for tau = 100,000 sec.
If you delete all but the first 200,000 lines then you can calculated
ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
You shouldn't lose sight of the fact that ADEV and OADEV are both
estimates of the Allan deviation.
Bruce
Steve Rooke wrote:
Tom,
I understand fully the points that you have made but I have obviously
not made my point clear to all and i apologise for my poor
communication skills.
This is what I'm getting at:
Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
and processing various forms of gps.dat from
http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 400000
** Normal and Overlapping Allan deviation:
1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
So far, so good. Now I delete every even line in the file which leaves
me with 200000 lines of data (400000 lines in original gps.dat file).
(awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
** Sampling period: 1 s
INCORRECT!!
sampling period is now 2s.
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
Obviously we don't have enough data now for a measurement of 100000
tau but the results for the other tau are quite close, especially when
there are sufficient data points. Now this is discontinuous data,
exactly what I was trying to allude to.
OK, so now I take only the top 200000 lines of the gps.dat file (head
-200000 gps.dat >gps2.dat)
C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
** Sampling period: 1 s
** Phase data scale factor: 1.000e+000
** Total phase samples: 200000
** Normal and Overlapping Allan deviation:
1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
Is there any Linux tools for calculating adev as I'm having to run
Windows in a VMware session?
73,
Steve
2009/4/8 Tom Van Baak tvb@leapsecond.com:
Steve,
You've asked a couple of questions. Let me start with this.
It is true that if one were only interested in the performance
of a pendulum (or quartz or atomic) clock for averaging times
of one day that all you would need is a series of time error
(aka phase) measurements made about the same time once
a day (doesn't have to be that exact). After one week, you'd
have 7 error measurements (=6 frequency =5 stability points)
and this is adequate to calculate the ADEV for tau 1 day.
This alone allows you to rank your clock among all the other
pendulum clocks out there. Note also you get time error and
rate error from these few data points too.
As another example, suppose you have a nice HP 10811A
oscillator and want to measure its drift rate. In this case you
could spend just 100 seconds and measure its frequency
once a day, or even once every couple of days. Do this for
a month and you'd have several dozen points. If you plot
these frequency measurements you will likely see that they
approximately fall on a line; the slope of the is the frequency
drift rate of the 10811. The general shape of the points, or
the fit of the line is a rough indication of how consistent the
drift rate is or if it's increasing or decreasing.
Neither of these examples require a lot of data. Both of these
are real-world examples.
OK so far?
/tvb
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
Steve Rooke wrote:
> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>
>> The sampling interval is indeed 1sec in the original data.
>> However, if you delete every second sample the sampling interval in the
>> resultant data is then 2 sec.
>>
>
> Doesn't that imply that the data point should correspond to the whole
> sampling period and not just half of it?
>
>
The total measurement time is only deceased by 1 sec at the most if you
delete every second line.
The resampled data now has a sampling interval of 2 sec for the entire
measurment time.
The original data samples are phase differences measured on the second
every second.
The resampled data are phase differences measured every 2 seconds on the
corresponding second transition.
> 73,
> Steve
>
>
>>> OK, I'll have a go at compiling it as it is just a command line program.
>>>
>>> 73,
>>> Steve
>>>
>>> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>
>>>
>>>> Steve
>>>>
>>>> Therein lies your problem.
>>>> adev1 defaults to a sampling interval of 1 sec. (read the C source code).
>>>> TvB's documentation explicitly states that you should supply the
>>>> sampling interval. (its a command line argument for adev1.c).
>>>>
>>>> adev1.c is a simple command line program that uses stdin and stdout so
>>>> porting it to a linux command line (non graphical) program should be
>>>> straightforward.
>>>> You can even use redirection and pipes should you need them.
>>>>
>>>> You can try porting it to Scilab which is free courtesy of the French
>>>> Government.
>>>>
>>>>
>>>> Bruce
>>>>
>>>> Steve Rooke wrote:
>>>>
>>>>
>>>>> Bruce,
>>>>>
>>>>> I set nothing, as indicated in my text, I just delete data points, IE.
>>>>> a file of 400000 records now becomes 200000. I'm trying to get my head
>>>>> round this as the absolute requirement for continuous data seems
>>>>> unneeded. What you have to remember here is that the data set I'm
>>>>> working with consists of discrete measurements of the period of each
>>>>> pulse. If it was timestamps, then there would be problems.
>>>>>
>>>>> I don't know how much MATLAB costs but I would guess it is way out of my budget.
>>>>>
>>>>> 73,
>>>>> Steve
>>>>>
>>>>> 2009/4/9 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>>>
>>>>>
>>>>>
>>>>>> Steve
>>>>>>
>>>>>> The data file doesn't include the time interval between samples so do
>>>>>> you set this in some way?
>>>>>> If so you need to set it to 1s for the unaltered data, to 2s when you
>>>>>> take every 2nd sample, and 1s when you take the first 200,000 samples.
>>>>>>
>>>>>> In principle you could use CANVAS (available on request from USNO -
>>>>>> however you may have to wait a few days while they decide whether to
>>>>>> grant your request.) for such analysis in Linux but you would then need
>>>>>> the Linux version of Matlab.
>>>>>> Or you could request that it be compiled for Linux - a fairly simple
>>>>>> task if one has the Linux version of Matlab.
>>>>>>
>>>>>> In principle you should be able to port the m source files to Scilab,
>>>>>> but there are some subtle differences between Scilab and Matlab so this
>>>>>> may take a while.
>>>>>>
>>>>>> Bruce
>>>>>>
>>>>>> Steve Rooke wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Bruce,
>>>>>>>
>>>>>>> But how does that explain the output of Tom's adev1 program which
>>>>>>> still seems to give a a good measurement at tau = 1s?
>>>>>>>
>>>>>>> 73,
>>>>>>> Steve
>>>>>>>
>>>>>>> 2009/4/8 Bruce Griffiths <bruce.griffiths@xtra.co.nz>:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Steve
>>>>>>>>
>>>>>>>> If you delete every second measurement then your effective minimum
>>>>>>>> sampling time is now 2s and you can no longer calculate ADEV for tau< 2s.
>>>>>>>> You can still calculate ADEV for tau = 100,000 sec.
>>>>>>>>
>>>>>>>> If you delete all but the first 200,000 lines then you can calculated
>>>>>>>> ADEV for tau=1sec and up to tau= 25,000 sec with reasonable accuracy.
>>>>>>>>
>>>>>>>> You shouldn't lose sight of the fact that ADEV and OADEV are both
>>>>>>>> estimates of the Allan deviation.
>>>>>>>>
>>>>>>>>
>>>>>>>> Bruce
>>>>>>>>
>>>>>>>> Steve Rooke wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>> Tom,
>>>>>>>>>
>>>>>>>>> I understand fully the points that you have made but I have obviously
>>>>>>>>> not made my point clear to all and i apologise for my poor
>>>>>>>>> communication skills.
>>>>>>>>>
>>>>>>>>> This is what I'm getting at:
>>>>>>>>>
>>>>>>>>> Using your adev1.exe from http://www.leapsecond.com/tools/adev1.htm
>>>>>>>>> and processing various forms of gps.dat from
>>>>>>>>> http://www.leapsecond.com/pages/gpsdo-sim/gps.dat.gz.
>>>>>>>>>
>>>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps.dat
>>>>>>>>>
>>>>>>>>> ** Sampling period: 1 s
>>>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>>>> ** Total phase samples: 400000
>>>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>>>
>>>>>>>>> 1 tau, 3.0127e-009 adev(n=399998), 3.0127e-009 oadev(n=399998)
>>>>>>>>> 2 tau, 1.5110e-009 adev(n=199998), 1.5119e-009 oadev(n=399996)
>>>>>>>>> 5 tau, 6.2107e-010 adev(n=79998), 6.1983e-010 oadev(n=399990)
>>>>>>>>> 10 tau, 3.1578e-010 adev(n=39998), 3.1549e-010 oadev(n=399980)
>>>>>>>>> 20 tau, 1.6531e-010 adev(n=19998), 1.6534e-010 oadev(n=399960)
>>>>>>>>> 50 tau, 7.2513e-011 adev(n=7998), 7.3531e-011 oadev(n=399900)
>>>>>>>>> 100 tau, 4.0029e-011 adev(n=3998), 4.0618e-011 oadev(n=399800)
>>>>>>>>> 200 tau, 2.1512e-011 adev(n=1998), 2.1633e-011 oadev(n=399600)
>>>>>>>>> 500 tau, 9.2193e-012 adev(n=798), 9.1630e-012 oadev(n=399000)
>>>>>>>>> 1000 tau, 4.9719e-012 adev(n=398), 4.7750e-012 oadev(n=398000)
>>>>>>>>> 2000 tau, 2.6742e-012 adev(n=198), 2.5214e-012 oadev(n=396000)
>>>>>>>>> 5000 tau, 1.0010e-012 adev(n=78), 1.1032e-012 oadev(n=390000)
>>>>>>>>> 10000 tau, 6.1333e-013 adev(n=38), 6.1039e-013 oadev(n=380000)
>>>>>>>>> 20000 tau, 3.8162e-013 adev(n=18), 3.2913e-013 oadev(n=360000)
>>>>>>>>> 50000 tau, 1.0228e-013 adev(n=6), 1.5074e-013 oadev(n=300000)
>>>>>>>>> 100000 tau, 5.8577e-014 adev(n=2), 6.7597e-014 oadev(n=200000)
>>>>>>>>>
>>>>>>>>> So far, so good. Now I delete every even line in the file which leaves
>>>>>>>>> me with 200000 lines of data (400000 lines in original gps.dat file).
>>>>>>>>> (awk 'and(NR, 1) == 0 {print}' <gps.dat >gps1.dat)
>>>>>>>>>
>>>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps1.dat
>>>>>>>>>
>>>>>>>>> ** Sampling period: 1 s
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>> INCORRECT!!
>>>>>> sampling period is now 2s.
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>>>> ** Total phase samples: 200000
>>>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>>>
>>>>>>>>> 1 tau, 3.0257e-009 adev(n=199998), 3.0257e-009 oadev(n=199998)
>>>>>>>>> 2 tau, 1.5373e-009 adev(n=99998), 1.5345e-009 oadev(n=199996)
>>>>>>>>> 5 tau, 6.3147e-010 adev(n=39998), 6.3057e-010 oadev(n=199990)
>>>>>>>>> 10 tau, 3.3140e-010 adev(n=19998), 3.3067e-010 oadev(n=199980)
>>>>>>>>> 20 tau, 1.7872e-010 adev(n=9998), 1.7810e-010 oadev(n=199960)
>>>>>>>>> 50 tau, 7.9428e-011 adev(n=3998), 8.1216e-011 oadev(n=199900)
>>>>>>>>> 100 tau, 4.2352e-011 adev(n=1998), 4.3265e-011 oadev(n=199800)
>>>>>>>>> 200 tau, 2.2001e-011 adev(n=998), 2.2593e-011 oadev(n=199600)
>>>>>>>>> 500 tau, 9.6853e-012 adev(n=398), 9.5441e-012 oadev(n=199000)
>>>>>>>>> 1000 tau, 5.0139e-012 adev(n=198), 5.0387e-012 oadev(n=198000)
>>>>>>>>> 2000 tau, 2.7994e-012 adev(n=98), 2.7090e-012 oadev(n=196000)
>>>>>>>>> 5000 tau, 1.4280e-012 adev(n=38), 1.2214e-012 oadev(n=190000)
>>>>>>>>> 10000 tau, 7.4881e-013 adev(n=18), 6.5814e-013 oadev(n=180000)
>>>>>>>>> 20000 tau, 7.6518e-013 adev(n=8), 3.7253e-013 oadev(n=160000)
>>>>>>>>> 50000 tau, 2.4698e-014 adev(n=2), 1.3539e-013 oadev(n=100000)
>>>>>>>>>
>>>>>>>>> Obviously we don't have enough data now for a measurement of 100000
>>>>>>>>> tau but the results for the other tau are quite close, especially when
>>>>>>>>> there are sufficient data points. Now this is discontinuous data,
>>>>>>>>> exactly what I was trying to allude to.
>>>>>>>>>
>>>>>>>>> OK, so now I take only the top 200000 lines of the gps.dat file (head
>>>>>>>>> -200000 gps.dat >gps2.dat)
>>>>>>>>>
>>>>>>>>> C:\Documents and Settings\Steve Rooke\Desktop>adev1.exe 1 <gps2.dat
>>>>>>>>>
>>>>>>>>> ** Sampling period: 1 s
>>>>>>>>> ** Phase data scale factor: 1.000e+000
>>>>>>>>> ** Total phase samples: 200000
>>>>>>>>> ** Normal and Overlapping Allan deviation:
>>>>>>>>>
>>>>>>>>> 1 tau, 3.0411e-009 adev(n=199998), 3.0411e-009 oadev(n=199998)
>>>>>>>>> 2 tau, 1.4985e-009 adev(n=99998), 1.4999e-009 oadev(n=199996)
>>>>>>>>> 5 tau, 6.1964e-010 adev(n=39998), 6.2010e-010 oadev(n=199990)
>>>>>>>>> 10 tau, 3.1315e-010 adev(n=19998), 3.1339e-010 oadev(n=199980)
>>>>>>>>> 20 tau, 1.6499e-010 adev(n=9998), 1.6495e-010 oadev(n=199960)
>>>>>>>>> 50 tau, 7.1425e-011 adev(n=3998), 7.3416e-011 oadev(n=199900)
>>>>>>>>> 100 tau, 3.9940e-011 adev(n=1998), 4.0730e-011 oadev(n=199800)
>>>>>>>>> 200 tau, 2.1488e-011 adev(n=998), 2.1558e-011 oadev(n=199600)
>>>>>>>>> 500 tau, 8.4809e-012 adev(n=398), 9.0886e-012 oadev(n=199000)
>>>>>>>>> 1000 tau, 4.9223e-012 adev(n=198), 4.7104e-012 oadev(n=198000)
>>>>>>>>> 2000 tau, 2.4335e-012 adev(n=98), 2.4515e-012 oadev(n=196000)
>>>>>>>>> 5000 tau, 1.0308e-012 adev(n=38), 1.0861e-012 oadev(n=190000)
>>>>>>>>> 10000 tau, 5.9504e-013 adev(n=18), 6.1031e-013 oadev(n=180000)
>>>>>>>>> 20000 tau, 3.6277e-013 adev(n=8), 3.1994e-013 oadev(n=160000)
>>>>>>>>> 50000 tau, 1.0630e-013 adev(n=2), 1.6715e-013 oadev(n=100000)
>>>>>>>>>
>>>>>>>>> Is there any Linux tools for calculating adev as I'm having to run
>>>>>>>>> Windows in a VMware session?
>>>>>>>>>
>>>>>>>>> 73,
>>>>>>>>> Steve
>>>>>>>>>
>>>>>>>>> 2009/4/8 Tom Van Baak <tvb@leapsecond.com>:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> Steve,
>>>>>>>>>>
>>>>>>>>>> You've asked a couple of questions. Let me start with this.
>>>>>>>>>>
>>>>>>>>>> It is true that if one were only interested in the performance
>>>>>>>>>> of a pendulum (or quartz or atomic) clock for averaging times
>>>>>>>>>> of one day that all you would need is a series of time error
>>>>>>>>>> (aka phase) measurements made about the same time once
>>>>>>>>>> a day (doesn't have to be that exact). After one week, you'd
>>>>>>>>>> have 7 error measurements (=6 frequency =5 stability points)
>>>>>>>>>> and this is adequate to calculate the ADEV for tau 1 day.
>>>>>>>>>> This alone allows you to rank your clock among all the other
>>>>>>>>>> pendulum clocks out there. Note also you get time error and
>>>>>>>>>> rate error from these few data points too.
>>>>>>>>>>
>>>>>>>>>> As another example, suppose you have a nice HP 10811A
>>>>>>>>>> oscillator and want to measure its drift rate. In this case you
>>>>>>>>>> could spend just 100 seconds and measure its frequency
>>>>>>>>>> once a day, or even once every couple of days. Do this for
>>>>>>>>>> a month and you'd have several dozen points. If you plot
>>>>>>>>>> these frequency measurements you will likely see that they
>>>>>>>>>> approximately fall on a line; the slope of the is the frequency
>>>>>>>>>> drift rate of the 10811. The general shape of the points, or
>>>>>>>>>> the fit of the line is a rough indication of how consistent the
>>>>>>>>>> drift rate is or if it's increasing or decreasing.
>>>>>>>>>>
>>>>>>>>>> Neither of these examples require a lot of data. Both of these
>>>>>>>>>> are real-world examples.
>>>>>>>>>>
>>>>>>>>>> OK so far?
>>>>>>>>>>
>>>>>>>>>> /tvb
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>>>>>> and follow the instructions there.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>>>> and follow the instructions there.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>> _______________________________________________
>>>>>> time-nuts mailing list -- time-nuts@febo.com
>>>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>>>> and follow the instructions there.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>> _______________________________________________
>>>> time-nuts mailing list -- time-nuts@febo.com
>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>> and follow the instructions there.
>>>>
>>>>
>>>>
>>>
>>>
>>>
>> _______________________________________________
>> time-nuts mailing list -- time-nuts@febo.com
>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>> and follow the instructions there.
>>
>>
>
>
>
>